Cod sursa(job #704076)

Utilizator alexamiu2008Miu Alexandra alexamiu2008 Data 2 martie 2012 16:16:56
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.33 kb
#include<stdio.h>
#define R 1999999973
FILE*fin,*fout;
long long  n,p,r;
int main(){

fin=fopen("lgput.in","r");
fout=fopen("lgput.out","w");
fscanf(fin,"%lld %lld",&n,&p);
r=1;
while(p>0){
	if(p%2==1){
	p--;
	r=r*n;
	r=r%R;
	}
	if(p!=0){
	n=n*n;
	n=n%R;
	p=p/2;
	}
	
}
fprintf(fout,"%lld",r%R);
return 0;
}