Cod sursa(job #904248)

Utilizator PregatireONIAnamaria Cotirlea PregatireONI Data 3 martie 2013 23:03:59
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include <stdio.h>

FILE *f,*s;

long long int a,b;

long long int Modulo(long long int a, long long int b)
{
	long long int c=1999999973;
	
	long long int r=1;
	
	while(b!=0)
	{
		if(b%2==1)
			r=(r*a)%c;
		
		a=(a*a)%c;
		
		b/=2;
	}
	
	return r;
}

int main()
{
	f=fopen("lgput.in","r");
	s=fopen("lgput.out","w");
	
	fscanf(f,"%lld %lld",&a,&b);
	
	fprintf(s,"%lld",Modulo(a,b));
	
	fclose(s);
	
	return 0;
}