题解 | #快速幂#

快速幂

https://www.nowcoder.com/practice/defdedf4fe984c6c91eefa6b00d5f4f0

//快速幂模板
#include <iostream>
using namespace std;
int main() {
    long long int q, a, b, p;
    cin >> q;
    while (q--) {
        cin >> a >> b >> p;
        long long int i = b, ans = 1;
        while (i) {
            if (i % 2)ans = ans * a;
            ans = ans % p;
            a = a * a;
            a = a % p;
            i = i / 2;
        }
        cout << ans << endl;
    }
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务