Cod sursa(job #1318969)

Utilizator CristianSocolescuCristianSocolescu CristianSocolescu Data 16 ianuarie 2015 15:28:59
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.35 kb
#include<fstream>
using namespace std;
ifstream fin ("lgput.in");
ofstream fout ("lgput.out");
int main()
{
long long N,P,M,x,y;
fin>>N>>P;
M=1999999973;
x=N%M;
y=1;
 while (P!=0)
 {
     if(P%2==1)
     {
         y=(y*x)%M;
     }
     x=(x*x)%M;
     P=P/2;
 }
   fout<<y<<"\n";
   fin.close();
   fout.close();
   return 0;
}