Cod sursa(job #279053)
| Utilizator | Data | 12 martie 2009 17:35:40 | |
|---|---|---|---|
| Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.43 kb |
#include <fstream.h>
#define C 1999999973
long long a,b;
long long lift(long long a,long long b)
{
long long s;
if(b==1) return a;
if (!(b%2))
{
s=lift(a,b/2);
return (s*s)%C;
}
else{
s=lift(a,b/2);
return (((s*s)%C)*a)%C;
}
}
int main()
{
ifstream be ("lgput.in");
ofstream ki ("lgput.out");
be>>a>>b;
be.close();
ki<<lift (a,b)<<'\n';
ki.close();
return 0;
}
