Cod sursa(job #327855)

Utilizator crisojogcristian ojog crisojog Data 30 iunie 2009 14:45:45
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.36 kb
#include<stdio.h>
const long rest=1999999973;
long kiki,n,p;
long long put(long n, long p)
{
	if(p==0) return 1;
	if(p%2==1)
		return (n*put(n,p-1))%rest;
	kiki=put(n,p/2)%rest;
	return kiki*kiki%rest;
}
int main()
{
	freopen("lgput.in","r",stdin);
	freopen("lgput.out","w",stdout);
	scanf("%ld%ld",&n,&p);
	printf("%lld\n",put(n,p));
	return 0;
}