- 博客(5)
- 收藏
- 关注
原创 O(n)预处理C(n,m)
fac[n] = n! = fac[n-1]*nf[n] = inv(n) = (mod - mod / i) * f[mod%i]inv[n] = inv(n!) = inv[n-1] * f[i]const int maxn=1000100;const int mod=1000000007;typedef long long LL;LL fac[maxn],f
2015-08-16 13:28:12 672
原创 hdu5382 GCD?LCM! 推公式+埃式筛法
题意:计算S(n)mod 258280327.其中[exp],exp是一个逻辑表达式,如果exp为真,[exp]=1,否则[exp]=0; caseF(n)=∑i=1n∑j=1n [ lcm(i,j)+gcd(i,j)≥n ]S(n)=∑i=1nF(i)分析:case数很大, 直接递推打表计算S(1~n). F(n)=F(n−1)
2015-08-14 18:39:49 1061
原创 原根与离散对数
概念1:原根欧拉定理:设m是大于1的整数,(a,m)=1,则a^φ(m)=1(mod m). 注:(a,m)表示a和m的GCD.也就是说,若(a,m)=1,m>1,则至少存在一个正整数r,满足a^r=1(mod m).指数的定义:若m>1,(a,m)=1,则使得同余式a^r=1(mod m)成立的最小正整数r叫做a对于模m的指数(阶),记r为ordm(a).
2015-08-14 13:28:20 2410 1
原创 hdu 5377 Root 原根+离散对数+扩展欧几里得
题意:给定一个数字sum,有 m 个询问:(xi, yi),求最小的非负整数 ki 满足 xi^ki =yi (mod p)。 其中 p 是 sum 的质因子。 1样例输入:1175 22 12 3样例输出:Case #1:03分析:直接用离散对数求解K的复杂度为O( m log m ),m为根号
2015-08-14 11:33:37 1429 1
原创 hdu5372 Segment Game 树状数组
题意:有长度为1,2,3……的若干线段,现在在x轴上进行操作(a,b)。 当a=0时为添加操作,在[ b,b+i ]上放上一条长度为 i 的线段(当前添加操作是第 i 次添加操作)。 当a=1时为删除操作,把第 b 次添加操作的线段删掉。 每次添加操作时,输出该区间范围内有多少个完整的线段。 操作数分析
2015-08-12 11:08:18 767
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人