Cod sursa(job #1648971)

Utilizator sorynsooSorin Soo sorynsoo Data 11 martie 2016 12:10:46
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include <fstream>
using namespace std;
ifstream cin("lgput.in");
ofstream cout("lgput.out");
#define MOD 1999999973

long long ridicare(long long baza, long long exponent)
{
    long long rez=1;
    while(exponent)
    {
        if(exponent%2==1)
        {
            rez *= baza;    rez %= MOD;
            exponent--;
        }

        baza *= baza; baza %=MOD;
        exponent /=2;
    }

    return rez;
}
int main()
{
    long long n,p;
    cin>>n>>p;
    cout<<ridicare(n,p);
    return 0;
}