Cod sursa(job #267162)
| Utilizator | Data | 26 februarie 2009 20:20:36 | |
|---|---|---|---|
| Problema | Ridicare la putere in timp logaritmic | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.46 kb |
#include<iostream.h>
#include<stdio.h>
const int C=1999999973;
int main()
{
unsigned int exp,i,bz;long long aux,rez=1;
freopen("D:\\in.txt","r",stdin);freopen("D:\\out.txt","w",stdout);
scanf("%d %d",&bz,&exp);
aux=bz;
for(i=0;(1<<i)<=exp;i++)
{if(((1<<i) & exp)>0)
rez=(rez*aux)%C;
aux=(aux*aux)%C;}
printf("%lld\n",rez);
fclose(stdin);fclose(stdout);
return 0;
}
