Cod sursa(job #182028)

Utilizator istiMihai Istudor isti Data 20 aprilie 2008 11:00:33
Problema Ridicare la putere in timp logaritmic Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.3 kb
#include<stdio.h>
const int mod=1999999973;
int main()
{
	freopen("lgput.in","r",stdin);
	freopen("lgput.out","w",stdout);
	unsigned int 
	long long a,n,p,r=1;
	scanf("%Ld%Ld",&a,&n);
	p=a;
	while(n){
		if(n%2)
			p=(r*p)%mod;
		p=(p*p)&mod;
		n/=2;
	}
	printf("%Ld\n",r);
	return 0;
}