#include<bits/stdc++.h>
using namespace std; long long b,p,k; int f(int a) { if(a==0) return 1; int t=f(a/2)%k; t=(t*t)%k; if(a%2==1) t=(t*(b%k))%k; return t; } int main() { freopen("dmod.in","r",stdin); freopen("dmod.out","w",stdout); cin>>b>>p>>k; int b1=b; b%=k; printf("%d\n",f(p)); } 我又怎么错了?!!!
题目 1130 取余运算
2024-07-16 08:29:59
|
|
#include<bits/stdc++.h>
using namespace std; long long b,p,k,s,t; int main() { freopen("helpless.in","r",stdin); freopen("helpless.out","w",stdout); cin>>b>>p>>k; s=b%k; t=1; for (int i=2;i<=p;i++) { s=s*b%k; if (s==b%k) break; t++; } p=p%t;s=1; if (p==0) p=t; for (int i=1;i<=p;i++) s=s*b%k; cout<<s; return 0; } 怎么错了!!!!!!!!!
题目 1130 取余运算
2019-08-05 16:52:17
|
|
1A
|
|
300题留念
题目 1130 取余运算
2017-01-23 21:12:49
|
|
退役倒计时。。。
|
|
看了评论的提示,还是一不小心就爆int了。。。函数里中间变量也要定义成long long
|
|
|
|
回复 @GaoErFu : 区别就是这题能用long long
|
|
8楼说得好
|
|
|
|
与圣庙里的汉诺塔基本没有区别。。。
|
|
|
|
|
|
mark
|
|
二分快速幂即可,基础代码程序。还有终于搞明白了一点,原来在评测页面刷新会导致程序重测,唉,悲催
|
|
对不起党。。。。
题目 1130 取余运算
2013-10-28 15:31:18
|
|
各种爆QAQ 终于过了
题目 1130 取余运算
2012-10-26 16:34:08
|
|
int爆了,long long快速幂,各种的 mod k
|