Cod sursa(job #280913)

Utilizator petrecgClinciu Glisca Petre petrecg Data 13 martie 2009 17:32:40
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.45 kb
#include <stdio.h>
long long rez,n,p;

inline long long putere(long long x,long long y)
{long long q;
 if(y==1)return x%1999999973;
 if(y%2){q=putere(x,y/2);
	 return ((q*q)%1999999973*x)%1999999973;
	}
  else {q=putere(x,y/2);
	return (q*q)%1999999973;}
}

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