BZOJ 2186: [Sdoi2008]沙拉公主的困惑| 数论
来源:互联网 发布:c语言校园导游系统 编辑:程序博客网 时间:2024/05/01 06:08
ans=(phi(m))*(n!/m!)
phi(m!)=m!*(p-1)/p p为m!的质因数
ans=n!*(p-1)/p
然后就是求逆元
用费马小定理求得 巨慢如雷电 10秒卡过 ........————————
这里说一下费马小定理求逆元
R是质数
求a关于R的逆元可以用快速幂
a^(R-2)%R即为a的逆元
因为 a*a^(R-2)=a^(R-1)=1(mod R)
好暴力啊……
#include<cstdio>#include<cstdlib>#include<cstring>#include<cmath>#include<queue>#include<vector>#include<set>#include<map>#include<algorithm>#include<iostream>#define P 10000000#define ll long longusing namespace std;bool prime[P+10];int fac[P+10],ine[555555],pri[555555],ans[P+10];int T,R,m,n,tot;int cal(ll x,ll y,ll z){ll ans=1;while(y){if(y&1) ans=ans*x%z;x=x*x%z;y>>=1;}return ans;}void get_pri(){fac[1]=1;for(int i=2; i<=P; i++) fac[i]=(ll)fac[i-1]*i%R;for(int i=2; i<=P; i++){ if(!prime[i]) pri[++tot]=i; for(int j=1; i*pri[j]<=P; j++) { prime[i*pri[j]]=1; if(i%pri[j]==0) break; }}ans[1]=1;for(int i=2; i<=P; i++){ans[i]=ans[i-1];if(!prime[i]) ans[i]=(ll)ans[i]*(i-1)%R*cal(i,R-2,R)%R;}} int main(){scanf("%d%d",&T,&R);get_pri();while(T--){scanf("%d%d",&n,&m);printf("%lld\n",(ll)fac[n]*ans[m]%R);}return 0;}
0 0
- BZOJ 2186 SDOI2008 沙拉公主的困惑 数论
- BZOJ 2186: [Sdoi2008]沙拉公主的困惑| 数论
- bzoj 2186: [Sdoi2008]沙拉公主的困惑 数论
- bzoj 2186: [Sdoi2008]沙拉公主的困惑
- 【bzoj 2186】: [Sdoi2008]沙拉公主的困惑
- BZOJ 2186 [Sdoi2008]沙拉公主的困惑
- BZOJ 2186: [Sdoi2008]沙拉公主的困惑
- bzoj 2186 [Sdoi2008]沙拉公主的困惑
- BZOJ 2186 [Sdoi2008] 沙拉公主的困惑
- BZOJ 2186 [Sdoi2008]沙拉公主的困惑
- 【bzoj2186】【sdoi2008】【沙拉公主的困惑】【数论】
- bzoj 2186: [Sdoi2008] 沙拉公主的困惑 (数论,逆元)
- bzoj 2186: [Sdoi2008]沙拉公主的困惑 (线性筛+数论)
- bzoj 2186 [Sdoi2008]沙拉公主的困惑 欧拉函数
- BZOJ 2186 [Sdoi2008]沙拉公主的困惑 线性逆元
- BZOJ 2186-[Sdoi2008]沙拉公主的困惑(乘法逆元)
- BZOJ 2186 [Sdoi2008]沙拉公主的困惑(逆元)
- 【BZOJ 2186】[Sdoi2008]沙拉公主的困惑 欧拉函数
- Objective-C的继承与组合
- hdu 2710 Max Factor
- beaglebone black 镜像
- 【51单片机】 数据管显示HELLO.
- 算法杂货铺——分类算法之贝叶斯网络(Bayesian networks)
- BZOJ 2186: [Sdoi2008]沙拉公主的困惑| 数论
- iOS知识点(5)
- 算法杂货铺——分类算法之决策树(Decision tree)
- 正篇 一. 开发前须知 1.1Android 命名规范 (提高代码可读性)
- iOS知识点(6)
- Uploadify v3.2.1 上传图片并预览
- IIS不能下载ini文件
- 【Github教程】史上最全github使用方法
- 算法杂货铺——k均值聚类(K-means)