Saturday 12 September 2015

UVA 1230 MODEX (UVALive 4104, Regionals 2007 >> Asia - Singapore)

///     Raihan Ruhin
///     CSE, Jahangirnagar University.
///     Dhaka-Bangladesh.
///     id: raihanruhin (topcoder / codeforces / codechef / uva / uvalive), 3235 (lightoj)
///     mail: raihanruhin@ (yahoo / gmail / facebook)
///     blog: ruhinraihan.blogspot.com

#include<bits/stdc++.h>
using namespace std;

#define SET(a) memset(a,-1,sizeof(a))
#define CLR(a) memset(a,0,sizeof(a))
#define PI acos(-1.0)

//#define MOD 1000000007
#define MX 100010

long long MOD;
long long Bigmod(long long base, long long power)
{
    long long ret=1;
    while(power)
    {
        if(power & 1)
         ret=(ret*base)%MOD;
        base=(base*base)%MOD;
        power>>=1;
    }
    return ret;
}

int main()
{
    ios_base::sync_with_stdio(0);cin.tie(0);
    int tc, kk=1, n, m, x, y, a, b, c;
    long long base, power;
    string s;
    cin>>tc;
    while(tc--)
    {
        cin>>base>>power>>MOD;
        cout<< Bigmod(base, power)<<"\n";
        if(!tc) cin>>x;
    }
return 0;
}

No comments:

Post a Comment