1. 程式人生 > >SDNU1349.快速冪入門

SDNU1349.快速冪入門

Description

輸入3個數a,b,c,求a ^ b mod c = ?

Input

多組資料:每組資料,三個數a,b,c。

Output

對於每一組資料,輸出一個數,即a ^ b mod c的答案。

Sample Input

5 10 9

Sample output

4

#include<cstdio>
#include<iostream>
using namespace std;
#define ll long long
ll qsm(ll a,ll b,ll c)
{
    ll sum=1;
    a%=c;
    while
(b) { if(b&1) { sum=(sum*a)%c; } b/=2; a=(a*a)%c; } return sum; } int main() { ll a,b,c,d; while(~scanf("%lld%lld%lld",&a,&b,&c)) { d=qsm(a,b,c); printf("%lld\n",d); } return 0; }