36分求助!
查看原帖
36分求助!
264463
添哥楼主2020/7/23 20:18
#include<iostream>
using namespace std;
int lowbit(int n)
{
    return n&(-n);
}
int main()
{

    long long b,p,k,s=1;
    cin>>b>>p>>k;
    cout<<b<<"^"<<p<<" mod "<<k<<"=";
    while(p)
    {
        int sum=b;
        for(int i=1;i<lowbit(p);i*=2)
        {
            sum*=sum;
        }
        s*=sum;
        p-=lowbit(p);
    }
    cout<<s%k;
    return 0;
}

数据点3输入:

4523 59 7762

我的输出:

4523^59 mod 7762=1865

答案:

4523^59 mod 7762=6275

求查错,谢谢大佬!

2020/7/23 20:18
加载中...