Cod sursa(job #363355)
Utilizator | Data | 12 noiembrie 2009 21:01:17 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.33 kb |
#include <fstream.h>
int main()
{
unsigned int p;
unsigned long long x,result=1;
ifstream in("lgput.in");
in>>x>>p; in.close();
while(p>0)
{
if(p%2==1){ result=(result*x)%1999999973; --p; } //p impar;
x=(x*x)%1999999973; p=p/2; // p/=2;
}
ofstream out("lgput.out"); out<<result; out.close();
return 0;
}