信息学奥赛一本通 1326:分治算法例7.5取余运算(mod)
发布时间
阅读量:
阅读量
1326:【例7.5】 取余运算(mod)
时间约束设定为1000毫秒,内存使用上限为65536千字节。
【题目描述】
给定长整型数值b、p与k,计算b的p次方对k取模的结果。其中,b、p以及k均为长整型变量。
【输入】
输入参数b、p以及k的数值。
【输出】
计算b的p次方对k取模的结果。
【输入样例】
2 10 9
【输出样例】
2^10 mod 9=7
解析:快速幂算法的实现方式中,递归方法是一种常见选择,具体实现可参考以下代码:
#include <bits/stdc++.h>
using namespace std;
long long f(int x,int y,int z){
if (y==0) return 1;
long long p=f(x,y/2,z);
if (y%2==1){
return p*p%z*x%z;
}else{
return p*p%z;
}
}
int main() {
long long b,p,k
全部评论 (0)
还没有任何评论哟~
