Cod sursa(job #672018)

Utilizator Victor10Oltean Victor Victor10 Data 1 februarie 2012 13:56:09
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.32 kb
#include <cstdio>
int main(){
	freopen("lgput.in","r",stdin);
	freopen("lgput.out","w",stdout);
	int a,b,i,masca=1;
	scanf("%d %d",&a,&b);
	//aflam dimensiunea puterii b in baza 2
	long long pow=1;
	for( i=31 ; i>=0 ; i-- ){
		pow=(pow*pow)%1999999973;
		if( (masca<<i) & b )pow=(pow*a)%1999999973;
	}
	printf("%lld",pow);
}