Cod sursa(job #1206845)

Utilizator hopingsteamMatraguna Mihai-Alexandru hopingsteam Data 11 iulie 2014 12:54:19
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include <fstream>
#define MOD 1999999973
using namespace std;
ifstream fin("lgput.in");
ofstream fout("lgput.out");
int N,P;
void Read()
{
    fin>>N>>P;
}

int Power(int N, int P)
{
   int Sol=1;
    while(P)
    {
        if(P&1)
            Sol=(1LL*Sol*N)%MOD;
        N=(1LL*N*N)%MOD;
        P=P>>1;
    }
    return Sol;
}

void Print()
{
    fout<<Power(N,P)<<"\n";
}

int main()
{
    Read();
    Print();
    return 0;
}