Cod sursa(job #559281)

Utilizator mihaipopa12Popa Mihai mihaipopa12 Data 17 martie 2011 19:03:07
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.4 kb
#include<stdio.h>
#define i64 long long
#define MOD 1999999973

FILE*f=fopen("lgput.in","r");
FILE*g=fopen("lgput.out","w");

i64 a,b,P,Sol;

int main () {
	fscanf(f,"%lld %lld",&a,&b);
	
	Sol = 1; P = a;
	
	while ( b ){
		if ( b & 1 ){
			Sol = ( Sol * P ) % MOD;
		}
		P = ( P * P ) % MOD;
		b = b >> 1;
	}
	
	fprintf(g,"%lld\n",Sol);
	
	fclose(f);
	fclose(g);
	
	return 0;
}