Cod sursa(job #572173)

Utilizator nutipasa16Macovei Claudiu nutipasa16 Data 5 aprilie 2011 08:35:50
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.39 kb
#include<fstream.h>
#define M 1999999973
#define Ai unsigned int
#define ALL unsigned long long
ifstream f("lgput.in");
ofstream g("lgput.out");
Ai n,p;
Ai putere(Ai x,Ai y)
{ALL t;
 if(y==0) return 1;
 if(y%2) {t=putere(x,y/2); t=(t*t)%M; return (t*x)%M;}
         else {t=putere(x,y/2);return (t*t)%M;}
}

int main()
{f>>n>>p;
 g<<putere(n,p)<<"\n";
 g.close();
 return 0;
}