Cod sursa(job #1124719)

Utilizator firutibogdanFiruti Bogdan-Cristian firutibogdan Data 26 februarie 2014 13:27:15
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.45 kb
#include<fstream>
using namespace std;
long long n,k,p,c,y,z,x,r;
fstream fin,fout;
int main()
{
    fin.open("lgput.in",ios::in);
    fout.open("lgput.out",ios::out);
    fin>>n>>p;
    x=p;
    c=1999999973;
    z=n%c;
    y=1;
    while(x>0)
    {
        r=x%2;
        if(r==1)
        {
            y=(y*z)%c;
        }
        x=x/2;
        z=(z*z)%c;
    }
    fout<<y;
    fin.close();
    fout.close();
    return 0;
}