[C++][算法基础]求a的b次方模p的值(快速幂)

给定 n 组 ,对于每组数据,求出 的值。

输入格式

第一行包含整数 n。

接下来 n 行,每行包含三个整数

输出格式

对于每组数据,输出一个结果,表示 的值。

每个结果占一行。

数据范围

1≤n≤100000,

1≤≤2×

输入样例:
复制代码
2
3 2 5
4 3 9
输出样例:
复制代码
4
1

代码:

cpp 复制代码
#include<iostream>
#include<algorithm>
using namespace std;

long long a,b;
int n,p;
const int N = 100010;

long long QuickMul(long long a,long long b,int p){
    long long res = 1;
    while(b != 0){
        if((b & 1) == 1){
            res = res * a % p;
        }
        b = b / 2;
        a = a * a % p;
    }
    return res;
}

int main(){
    cin>>n;
    while(n--){
        cin>>a>>b>>p;
        long long ans = QuickMul(a,b,p);
        cout<<ans<<endl;
    }
    return 0;
}
相关推荐
adam_life1 分钟前
A*算法——# P1379 八数码难题
算法·优先队列·a星算法·最优启发式搜索·哈希标记·启发式函数·已走步数+预估距离
南境十里·墨染春水2 分钟前
C++传记 this指针 及区分静态非静态成员(面向对象)
开发语言·jvm·c++·笔记
揽月凡尘2 分钟前
基于 SWIG 的 C++ Embind 绑定自动化技术说明
开发语言·c++·自动化
Yungoal3 分钟前
C++基础项目结构
数据结构·c++·算法
扶摇接北海1768 分钟前
洛谷:B4477 [语言月赛 202601] 考场安排
数据结构·c++·算法
IAUTOMOBILE11 分钟前
Qt 入门级开发实践:浅析基于 QTtest 项目的 C++ GUI 编程基础
开发语言·c++·qt
爱丽_15 分钟前
AQS 的 `state`:volatile + CAS 如何撑起原子性与可见性
java·前端·算法
2301_7887705516 分钟前
OJ模拟5
数据结构·算法
羊小猪~~18 分钟前
算法/力扣--字符串经典题目
c++·考研·算法·leetcode·职场和发展·哈希算法
攒了一袋星辰19 分钟前
10万级用户数据日更与定向推送系统的可靠性设计
java·数据库·算法