Cod sursa(job #577582)

Utilizator AnteusPatrascoiu Mihai Anteus Data 10 aprilie 2011 13:42:58
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.39 kb
#include <stdio.h>
#define MOD 1999999973
FILE *f=fopen ("lgput.in", "r");
FILE *g=fopen ("lgput.out", "w");
long long a,b;

long long putere(int a, int b) {
long long x;

if (b==1)
	return a%MOD;
else
{
	x=putere(a,b/2)%MOD;
	if (b%2)	return (x*x)%MOD*(a%MOD);
	else		return	x*x;
}
}

int main() {
fscanf (f, "%lld%lld", &a,&b);

fprintf (g, "%lld", putere(a,b)%MOD);
return 0;
}