Cod sursa(job #168100)

Utilizator MaGdUtZaVasile Maria-Magdalena MaGdUtZa Data 30 martie 2008 18:56:04
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.33 kb
#include<stdio.h>
#define m 1999999973

int i,n,p;

long long unsigned sol=1,a;

int main()
{
	freopen("lgput.in","r",stdin);
	freopen("lgput.out","w",stdout);

	scanf("%d%d",&n,&p);

	a=n;

	for(i=0; (1<<i) <=p ; ++i)
	{
		if(((1<<i) & p) >0)

			sol=(sol*a)%m;

		a=(a*a)%m ;
	}
	printf("%llu",sol);

	return 0;
}