中国七大网络运营商,seo线上培训机构,怎么上传自己的做网站,东莞饭堂承包东莞网站建设【模板】快速幂
题目描述
给你三个整数 a , b , p a,b,p a,b,p#xff0c;求 a b m o d p a^b \bmod p abmodp。
输入格式
输入只有一行三个整数#xff0c;分别代表 a , b , p a,b,p a,b,p。
输出格式
输出一行一个字符串 a^b mod ps#xff0c;其中 a , b , p a…【模板】快速幂
题目描述
给你三个整数 a , b , p a,b,p a,b,p求 a b m o d p a^b \bmod p abmodp。
输入格式
输入只有一行三个整数分别代表 a , b , p a,b,p a,b,p。
输出格式
输出一行一个字符串 a^b mod ps其中 a , b , p a,b,p a,b,p 分别为题目给定的值 s s s 为运算结果。
样例 #1
样例输入 #1
2 10 9样例输出 #1
2^10 mod 97提示
样例解释 2 10 1024 2^{10} 1024 2101024 1024 m o d 9 7 1024 \bmod 9 7 1024mod97。
数据规模与约定
对于 100 % 100\% 100% 的数据保证 0 ≤ a , b 2 31 0\le a,b 2^{31} 0≤a,b231 a b 0 ab0 ab0 2 ≤ p 2 31 2 \leq p \lt 2^{31} 2≤p231。
代码
#include stdio.h
#include stdlib.hint main(int argc, char *argv[])
{long long a, b, p, ans,x , y;scanf(%lld %lld %lld, a, b, p);x a;y b;ans 1;x x % p;while (y 0){if ((y % 2) 1){ans (ans * x) % p;}y y / 2;x (x * x) % p;}printf(%lld^%lld mod %lld%lld, a, b, p, ans);return 0;
}