您的位置:首页 > 其它

【模板】快速幂||取余运算

2018-10-28 20:23 85 查看

【模板】快速幂||取余运算

题目描述

输入b,p,k的值,求b^p mod k的值。其中b,p,k*k为长整型数。
输入输出格式
输入格式:

三个整数b,p,k.

输出格式:

输出“b^p mod k=s”

s为运算结果

#include<iostream>
using namespace std;
int s(long long num,long long n,long long p)
{
long long ss=1;
if(n)
{
while(n)
{
if(n%2==1)
ss=(ss*num)%p;
num=(num*num)%p;
n/=2;
}
return ss;
}
else
return 1%p;
}
int main()
{
long long a,b,p;
cin>>a>>b>>p;
cout<<a<<'^'<<b<<" mod "<<p<<'='<<s(a,b,p);
return 0;
}
阅读更多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: