A

签到


B

题意

定义:一个数(没有前缀0)的各个位数之和为10位“perfec”数,问第k个“perfect”数位多少(1<=k<=1e5)

分析

一开始找错了,以为会超过1e9,通过理性的分析不难发现,最大不超过1e9,强行打个表即可


C

签到


D

题意

n个点m条边的有向图,每个点有一个数字(可以重复,0~25),定义一条路径的权值为该路径出现数字最多的数字的次数,若有环输出-1,否则输出最大值(1 ≤ n, m ≤ 300 000)

分析

思路:首先直接dfs肯定不行,最坏情况n^2,

问题就在于:如何记忆的记录已经搜索的路的每个数字的次数

解决:dp思想,每个点记录下到改点的所有数字的次数即可

正解:拓扑排序+dp

拓扑排序的时候dp即可

定义:dp[i][j]:第i个点数字j的最大值

转移 :直接从上一个节点到当前节点转移即可

时间复杂度(26*m)

#include<bits/stdc++.h>
#define ll long longusing namespace std;const int maxn = 300000+2;int num[maxn];
struct node
{int to,next;}edge[maxn];
int cnt;
int head[maxn];void addedge(int u, int v)
{++cnt;edge[cnt].to=v;edge[cnt].next=head[u];head[u]=cnt;
}bool flag;
int n, m;
string s;
int dp[maxn][26];
int answer=0;
queue<int>q;
int deep[maxn];void topsort()
{int ans=0;while(!q.empty()){ans++;int now=q.front();q.pop();for(int i=head[now];i!=0;i=edge[i].next){int v=edge[i].to;deep[v]--;if(!deep[v])q.push(v);for(int j=0;j<26;j++){if(j==num[v])dp[v][j]=max(dp[v][j],dp[now][j]+1);elsedp[v][j]=max(dp[v][j],dp[now][j]);answer=max(answer, dp[v][j]);}}}if(ans<n)flag=false;}int main()
{flag=true;scanf("%d%d", &n, &m);cin>>s;for(int i=0;i<n;i++){num[i+1]=s[i]-'a';}int u,v;for(int i=0;i<m;i++){scanf("%d%d", &u, &v);addedge(u,v);deep[v]++;}for(int i=1;i<=n;i++){if(deep[i]==0){q.push(i);dp[i][num[i]]++;}}topsort();if(!flag)printf("-1\n");elseprintf("%d\n", answer);return 0;
}

View Code


E

题意

n*a^n = b (mod p)  (1<=n<=x),给出a,b,x,p(p为素数),问满足上式的n的个数 (2 ≤ p ≤ 106 + 3, 1 ≤ a, b < p, 1 ≤ x ≤ 1012)

分析

费马小定理应用

转载于:https://www.cnblogs.com/Superwalker/p/8407712.html

Codeforces Round #460 (Div. 2)相关推荐

  1. [Codeforces]Codeforces Round #460 (Div. 2)

    Supermarket 找最便宜的就行 Solution Perfect Number 暴力做 Solution Seat Arrangement 注意当k=1时,横着和竖着是同一种方案 Soluti ...

  2. Codeforces Round #460 (Div. 2): D. Substring(有向图)

    题意:给你一个有向图,每个节点都有一个字母,一条路径(可以重复经过点或边)的值为出现次数最多的字母出现次数,求出路径的最大值(如果无穷大输出-1) 思路:有环就是-1,有向图判环可以用DPS,也可以B ...

  3. Codeforces Round #460 (Div. 2): E. Congruence Equation(枚举)

    题意:给出a, b, p, x,求有多少个n满足①n*a^n%p==b:②n<=x 思路:先要知道一个很简单的性质:a^n%p的值一定存在循环节(n=0就进入循环),且周期T一定是p-1的约数 ...

  4. Codeforces Round #506 (Div. 3)

    Codeforces Round #506 (Div. 3) 实习期间事不多,对div3 面向题解和数据编程了一波 A. Many Equal Substrings 题目链接 A题就是找后缀和前缀重合 ...

  5. Codeforces Round #563 (Div. 2)/CF1174

    Codeforces Round #563 (Div. 2)/CF1174 CF1174A Ehab Fails to Be Thanos 其实就是要\(\sum\limits_{i=1}^n a_i ...

  6. 构造 Codeforces Round #302 (Div. 2) B Sea and Islands

    题目传送门 1 /* 2 题意:在n^n的海洋里是否有k块陆地 3 构造算法:按奇偶性来判断,k小于等于所有点数的一半,交叉输出L/S 4 输出完k个L后,之后全部输出S:) 5 5 10 的例子可以 ...

  7. Codeforces Round #696 (Div. 2) (A ~ E)超高质量题解(每日训练 Day.16 )

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Codeforces Round #696 (Div. 2) (A ~ E)超高质量题解 比赛链接:h ...

  8. Codeforces Round #712 Div.2(A ~ F) 超高质量题解(每日训练 Day.15 )

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Codeforces Round #712 Div.2(A ~ F) 题解 比赛链接:https:// ...

  9. Codeforces Round #701 (Div. 2) A ~ F ,6题全,超高质量良心题解【每日亿题】2021/2/13

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 目录 A - Add and Divide B - Replace and Keep Sorted C ...

最新文章

  1. 图灵四月书讯 ——经典与技术前沿的融合
  2. 1.2 离散时间信号-采样
  3. Redis 6.0 新特性,多线程连环 13 问!
  4. Electron中 提示:Uncaught ReferenceError: process is not defined
  5. paramiko 使用总结(SSH 操作远端机器)
  6. 计算机网络实验ifconfig,《计算机网络》操作系统网络配置实验.doc
  7. 怎么在自己的网站上显示其它网站_自己做网站要怎么选域名?
  8. GIS实战应用案例100篇(十六)-CASS道路横断面线,如何折线变直线?
  9. 三、Python第三课——Python中数字的用法及编码原则(Python禅意)
  10. C语言printf 和 scanf 用法
  11. python编译成class_python class
  12. 传递情感贺卡海报,你知道怎么设计么?让设计更简单,从临摹PSD模板开始
  13. 删除mysql临时文件_mysql自动备份数据库与自动删除临时文件
  14. OpenCV笔记(十八)——使用霍夫变换检测圆圈
  15. 世界杯正在成为鸡肋!球迷越来越像傻瓜!
  16. 机器学习之线性回归(机器学习基石)
  17. 修复小米路由器mini的USB口
  18. winPE4.0制作过程
  19. TPC TPCC TPMC 计算机性能衡量指标
  20. Excel转Json 绿色工具

热门文章

  1. 一加10 Pro的性能配置还是非常不错的
  2. 股票的资产重组什么意思?
  3. 你缺钱只有一个原因就是你每天做赚钱的动作太少了
  4. 股票市场的本质是为优质企业提供融资的平台
  5. 电商培训有用是有前置条件的
  6. 社区团购真的是实体店终结者吗?
  7. 千万主播薇娅们直播间用的直播六个话术
  8. 有些店铺340块3T希捷硬盘,有什么猫腻吗?
  9. 如果微信被运维删库、跑路,会造成什么恐怖的后果?
  10. 用DOM方式读取xml