Cod sursa(job #234586)
| Utilizator | Data | 21 decembrie 2008 11:22:50 | |
|---|---|---|---|
| Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.49 kb |
#include <iostream.h>
#include <fstream.h>
# define R 1999999973
fstream f("lgput.in", ios::in);
fstream g("lgput.out", ios::out);
long long x,n,p;
long long putere (long long x, long long n)
{
long long p;
if (n==0)
return 1;
else if (n%2==1)
return (x*putere(x,n-1))%R;
else
{
p=putere(x,n/2);
return (p*p)%R;
}
}
int main ()
{
f>>n>>p;
g<<putere(n,p)%R;
f.close();
g.close();
return 0;
}
