Cod sursa(job #1650056)

Utilizator adiXMGemene Adrian adiXM Data 11 martie 2016 16:19:22
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include <fstream>
using namespace std;
ifstream f("lgput.in");
ofstream g("lgput.out");
const int MOD=1999999973;
inline long long Put(int x, int n,int MOD)
{
    int p=1;
    while (n>0)
    {
        if(n&1)
        {
            p=(1LL*p*x)%MOD;
            n--;
        }
        x=(1LL*x*x)%MOD;
        n=n/2;
    }
    return p ;
}
int main()
{
    long long n,p;
    f>>n>>p;
    g<<Put(n,p,MOD)<<"\n";
    return 0;
}