Cod sursa(job #731572)
| Utilizator | Data | 8 aprilie 2012 14:49:27 | |
|---|---|---|---|
| Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.43 kb |
#include <cstdio>
#define MOD 1999999973
long long r,n;
long long pow(long long p){
if(p==1)return n; else {
if(p%2==0){
long long r=pow(p/2);
return r*r%MOD; } else {
long long r=pow(p/2);
return r*r%MOD*n%MOD; } }
}
int main(){
int p;
freopen("lgput.in","r",stdin);
freopen("lgput.out","w",stdout);
scanf("%lld %lld",&n,&p);
printf("%lld\n",pow(p));
}
