int fp(int a,int b,int p){
int ans=1;a=a%p;
for(int i = 0;i<=31;i++){
if(b&(i<<i)) ans=ans*a%p;
a=a*a%p;
}
return ans;
}
int main(){
int a,b,p;
cin >> a >> b >> p;
cout << fp(a,b,p);
}
a,b,p均在int以内的正整数
两道判断题:
(1)缩小b的范围一定不会影响代码的正确性
(2)缩小p的范围一定不会影响代码的正确性
答案是(1)是对的 (2)是错的 解析奇奇怪怪的,有没有大佬来解答一下