Cod sursa(job #267124)
| Utilizator | Data | 26 februarie 2009 19:48:18 | |
|---|---|---|---|
| Problema | Ridicare la putere in timp logaritmic | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.44 kb |
#include<iostream.h>
#include<stdio.h>
#define C 1999999973
int main()
{
unsigned long long int bz,exp,rez=1,i;
freopen("lgput.in","r",stdin);freopen("lgput.out","w",stdout);
scanf("%lldu %lldu",&bz,&exp);
for(i=0;(1<<i)<=exp;i++)
{if(((1<<i) & exp)>0)
rez=(rez*bz)%C;
bz=(bz*bz)%C;}
printf("%lldu",rez);
fclose(stdin);fclose(stdout);
return 0;
}
