Cod sursa(job #396209)

Utilizator SzabiVajda Szabolcs Szabi Data 14 februarie 2010 19:02:56
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.4 kb
#include <stdio.h>

long long   n,p;
long const m=1999999973;

long long  hatvany(long long  n,long  long p){

	
	if(p==0){return 1;}else{
		if(p%2==0){
		return hatvany((n*n)%m,p/2)%m;}else{
		return n*hatvany((n*n)%m,(p-1)/2)%m;

	}}
}

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

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

printf("%ld",hatvany(n,p));

return 0;
}