1046 A^B Mod C

基准时间限制:1 秒 空间限制:131072 KB

给出3个正整数A B C,求A^B Mod C。
例如,3 5 8,3^5 Mod 8 = 3。
Input

3个正整数A B C,中间用空格分隔。(1 <= A,B,C <= 10^9)

Output

输出计算结果

Input示例

3 5 8

Output示例

3

代码:

#include <iostream>
#include <cstdio>
#include <algorithm>

using namespace std;

long long myPow(long long A,long long B,long long C){

    long long mid = 1;

    while(B){
        if(B&1){
            mid *= A;
            mid %= C;
        }
        A *= A;
        A %= C;
        B >>= 1;
    }

    return mid;
}

int main(){
    long long A,B,C;

    cin>>A>>B>>C;
    cout<<myPow(A,B,C)<<endl;

    return 0;
}
posted @ 2017-10-14 15:02  Assassin_poi君  阅读(109)  评论(0编辑  收藏  举报