Cod sursa(job #222132)

Utilizator andreea_mandreea martinovici andreea_m Data 20 noiembrie 2008 17:34:29
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.37 kb
#include<stdio.h>
#define N 1999999973
long long n,p;
long long putere(long long a, long long b)
{
	if(b==0)
		return 1;
	if(b&1)
		return a*putere(a*a%N,b>>1)%N;
	return putere(a*a%N,b>>1)%N;
}

int main()
{
	freopen("lgput.in","r",stdin);
	freopen("lgput.out","w",stdout);
	scanf("%lld%lld", &n,&p);
	n%=N;
	printf("%lld\n",putere(n,p));
	return 0;
}