Bzoj1951 [Sdoi2010]古代猪文
2014-04-03 10:04
274 查看
找到一个总结数论的blog 戳这里
一份很好的题解+代码 -> here
【题目大意】对于所有n的因子i
对于C为质数 A^x%P=A^(k*(P-1)+q))%P=(A^(P-1)%P)^k*A^q %P=1^k*A^(x%(P-1))= A^(x%(P-1));
2.所以 现在要求的是 ΣC(n,i)%(P-1)
3.然后不明觉厉地找题解,
看到很多大神一眼看出 999911658=2*3*4679*35617。
4.可以先求出 ΣC(n,i)%2,ΣC(n,i)%3,ΣC(n,i)%4679,ΣC(n,i)%35617,
然后用中国剩余定理合并起来
对于形如
x%ai=bi 且 bi 互质的方程组,
M=πai,
mi=M/ai
mi*ni%ai=1
ans=Σ(mi*ni*bi)
5. 对于C(n,m) n,m>=1e5 可以用Kucas定理:C(n,m)=Lucsa(n,m,P)=C(n%P,m%P)*Lucas(n/p,m/p,p)
特别的 n<m时 lucus(n,m,p)=0 ,m=0 时lucus(n,m,p)=1
6.ORZ csdn 这蛋疼的文本编辑器和这sxbk的验证码
一份很好的题解+代码 -> here
【题目大意】对于所有n的因子i
求 G^ΣC(n,i) %P 其中 G <= 1e9,N <= 1e9,P=999911659
【分析】
1.有这样一个神奇的公式 A^x = A^(x % Phi(P) + Phi(P)) (mod P) x>=P对于C为质数 A^x%P=A^(k*(P-1)+q))%P=(A^(P-1)%P)^k*A^q %P=1^k*A^(x%(P-1))= A^(x%(P-1));
2.所以 现在要求的是 ΣC(n,i)%(P-1)
3.然后不明觉厉地找题解,
看到很多大神一眼看出 999911658=2*3*4679*35617。
4.可以先求出 ΣC(n,i)%2,ΣC(n,i)%3,ΣC(n,i)%4679,ΣC(n,i)%35617,
然后用中国剩余定理合并起来
对于形如
x%ai=bi 且 bi 互质的方程组,
M=πai,
mi=M/ai
mi*ni%ai=1
ans=Σ(mi*ni*bi)
5. 对于C(n,m) n,m>=1e5 可以用Kucas定理:C(n,m)=Lucsa(n,m,P)=C(n%P,m%P)*Lucas(n/p,m/p,p)
特别的 n<m时 lucus(n,m,p)=0 ,m=0 时lucus(n,m,p)=1
6.ORZ csdn 这蛋疼的文本编辑器和这sxbk的验证码
[HINT]
当 G==mo+1 碰巧 ΣC(n,i) %P也等于0时 要输出0相关文章推荐
- Bzoj1951: [Sdoi2010]古代猪文
- [bzoj1951][SDOI2010]古代猪文
- BZOJ1951 [Sdoi2010]古代猪文
- BZOJ1951: [Sdoi2010]古代猪文
- 【BZOJ1951】[中国剩余定理][SDOI2010]古代猪文
- [数论杂题] BZOJ1951: [Sdoi2010]古代猪文
- 【bzoj1951】[Sdoi2010]古代猪文 费马小定理+Lucas定理+中国剩余定理
- 【数学/扩展欧几里得/Lucas定理】BZOJ 1951 :[Sdoi 2010]古代猪文
- BZOJ1951: [Sdoi2010]古代猪文
- bzoj1951 [Sdoi2010]古代猪文
- 【bzoj1951】 Sdoi2010—古代猪文
- bzoj1951 [Sdoi2010]古代猪文
- BZOJ1951 [Sdoi2010]古代猪文
- BZOJ1951: [Sdoi2010]古代猪文
- BZOJ 1951 【SDOI2010】 古代猪文
- bzoj 1951: [Sdoi2010]古代猪文
- bzoj1951 [Sdoi2010]古代猪文
- BZOJ 1951: [Sdoi2010]古代猪文
- 【数学/扩展欧几里得/Lucas定理】BZOJ 1951 :[Sdoi 2010]古代猪文
- 【BZOJ1951】【SDOI2010】古代猪文