算法练习
算法,ACM
crystal笑笑生
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
HDU1711 KMP模板
HDU1711 KMP模板原创 2022-08-16 16:03:58 · 145 阅读 · 0 评论 -
ACM注意的一些细节
ACM一些要注意的细节~ 样例全演示一遍才敢下笔,不能先入为主。 关注题目数值范围,特别注意有无可能在计算中由于乘了某一个数爆int。 最好用全局变量(特别是数组,全局可开的更大)。 多组输入时特别敏感,每次code前将全局变量初始化。 字符串题涉及到时间(要输入:)和输入规模大时用scanf输入,切记string类型scanf不支持,但是不报错。 scanf输入时参数是地址,输字符串时(char型)不用&(本身就代表地址),其余用&。 结构化程序,多用函数,不要写成一大块。 平时code原创 2021-03-13 17:38:49 · 306 阅读 · 0 评论 -
CF1542C Strange Function
CF1542C Strange Function 原题链接 题意: 这里f[i]表示不是i因子的最小数。比如f[1]=2,f[2]=3,f[3]=2… 题目给一个n,求出∑i=1n\sum_{i=1}^n∑i=1nf[i]。 题解: 可以推出 f(1)=2 f(2)=3 f(3)=2 f(4)=3 f(5)=2 f(6)=4 f(7)=2 f(8)=3 f(9)=2 f(10)=3 f(11)=2 f(12)=5 f(13)=2 f(14)=3 f(15)=2 f(16)=3 f(17)=2 f原创 2021-07-13 10:36:03 · 370 阅读 · 0 评论 -
2021-03-17
怎么读入带空格的字符串数组 cin>>m; string s; getchar();//吸收整数后的换行符 while(m--) { getline(cin,s);//getline输入,换行,再getline输入,中间的换行符不用吸收 stringstream ss(s); while(ss>>s)//s依次为hi,how,r,u... { if(M.count(s)==0)//M是map cout<<s<<原创 2021-03-17 10:12:54 · 108 阅读 · 0 评论 -
组合数+逆元
求组合数 求CnmC_n^mCnm % PPP。 Cnm%P=n!m!×(n−m)!%P C_n^m \% P={n!\over m! \times (n-m)!}\%P Cnm%P=m!×(n−m)!n!%P ll C(ll n,ll m, ll P) { if(m>n) return 0; ll res=1,t1=1,t2=1; for(ll i=1,j=n;i<=m;i++,j--){ t1*=i; t1%=P; t2*=j; t2%=P; } re原创 2021-08-01 22:31:12 · 136 阅读 · 0 评论 -
2021牛客暑期多校训练第5场--D--Double String
题意 原题链接 给两个字符串A,B,从 {1 , 2 , 3 , … |A|} 里选出子序列 a ,从{ 1 , 2 , 3 , …|B| } 里选出子序列 b,求有多少个这种 a , b 组合满足条件。 条件为: a与b长度相等 存在 i 使得 Aai_{ai}ai< Bbi_{bi}bi, 且任意 j ∈\in∈ (1, i )都有 Aaj_{aj}aj = Bbj_{bj}bj 成立。 题解 在 [1 ,iii - 1] 和 [1,j−1j-1j−1] 区间里找公共子序原创 2021-08-01 22:46:18 · 133 阅读 · 0 评论 -
2021-03-17
并查集找连通图个数 并查集就是快速合并集合,在集合里快速查找元素。 例题: 给出n个城市,m条路,问还要修多少路能将所有城市连在一起。 思路: 将能连接到的城市合并在一个集合里,最后答案是集合数-1. 按照普通思路,如果a和b之间有路,belong ...原创 2021-03-17 11:09:26 · 115 阅读 · 0 评论
分享