hdu 4704(费马小定理)
来源:互联网 发布:mac php protobuf 编辑:程序博客网 时间:2024/05/29 03:00
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4704
思路:一道整数划分题目,不难推出公式:2^(n-1),根据费马小定理:(2,MOD)互质,则2^(p-1)%p=1,于是我们可以转化为:2^(n-1)%MOD=2^((n-1)%(MOD-1))%MOD,从而用快速幂求解。
1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include<algorithm> 5 using namespace std; 6 #define MOD 1000000007 7 8 char str[100100]; 9 long long Pow(long long n)10 {11 long long p=1,q=2;12 while(n){13 if(n&1){14 p=p*q%MOD;15 }16 n>>=1;17 q=q*q%MOD;18 }19 return p;20 }21 22 int main()23 {24 while(~scanf("%s",str)){25 int len=strlen(str);26 long long n=0;27 for(int i=0;i<len;i++){28 n=(n*10+str[i]-'0')%(MOD-1);29 }30 printf("%I64d\n",Pow(n-1));31 }32 return 0;33 }
0 0
- hdu 4704 费马小定理
- hdu 4704(费马小定理)
- hdu 4704 sum 费马小定理
- HDU 4704 Sum 费马小定理
- hdu 4704 费马小定理+普通快速幂
- hdu - 4704 - Sum(费马小定理)
- HDU 4704 Sum (费马小定理)
- HDU 4704 Sum 费马小定理+快速幂
- HDU 4704Sum(费马小定理+快速幂)
- HDU 4704 Sum(快速幂+费马小定理)
- HDU-4704 --费马小定理降幂
- [数论]HDU 4704 Sum 费马小定理
- hdu-4704 sum(费马小定理)
- hdu 4704 Sum(费马小定理)
- hdu 4704 费马小定理+快速幂
- hdu 4704 Sum (费马小定理+快速幂)
- HDU 4704 Sum (隔板原理 + 费马小定理)
- HDU--4704 Sum【费马小定理,快速幂】
- hdu 4679(树形dp)
- 矩阵小结
- poj 3469(网络流模版)
- 无法启动调试 未安装silverlight developer 运行时 解决办法
- hdu 4705(树形DP)
- hdu 4704(费马小定理)
- poj 2125(最小割)
- poj 2135(最小费用最大流)
- poj 2391(二分+最大流)
- poj 2455(二分+最大流)
- 张小龙演讲精华:产品经理的方法论与价值观
- poj 2987(最大权闭合图+割边最少)
- poj 3164(最小树形图)
- poj 3204(最小割)