Cod sursa(job #676768)

Utilizator Alexandru13Dumitraiche Marius-Alexandru Alexandru13 Data 9 februarie 2012 16:21:58
Problema Ridicare la putere in timp logaritmic Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.42 kb
#define mod 1999999973
#include<stdio.h>
using namespace std;
 long int putere(long int a, long int b)
{
	long int rezultat=1;
	while(b)
	{
		if(b%2)
			rezultat=(a*a)%mod;
		a=(a*a)%mod;
		b/=2;
	}
	return rezultat;
}
int main()
{
	FILE *f=fopen("lgput.in","r"),*g=fopen("lgput.out","w");
	long int a,b;
	fscanf(f,"%dl %dl", &a, &b);
	fprintf(g,"%dl", putere(a,b));
	fclose(f);
	fclose(g);
	return 0;
}