Cod sursa(job #2173886)

Utilizator nicholascantarNicholas David Cantar Gogitidze nicholascantar Data 16 martie 2018 09:24:11
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.4 kb
#include <fstream>

using namespace std;
long long ridicare (long long x, long long y)
{
    long long p=1;
    while(y>0)
    {
        if(y%2==0) {x=(x*x)%1999999973;y=y/2;}
        else {p=(p*x)%1999999973;y--;}
    }
    return p;
}
long long n,p;
int main()
{
    ifstream fin ("lgput.in");
    ofstream fout ("lgput.out");
    fin>>n>>p;
    fout<<ridicare(n,p);
    return 0;
}