Cod sursa(job #387411)

Utilizator runnaway90Oprescu Radu Constantin runnaway90 Data 27 ianuarie 2010 16:31:58
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.32 kb
#include<stdio.h>
#define MOD 1999999973

int n, p, s, sol = 1;

int main(){
	freopen("lgput.in","r",stdin);
	freopen("lgput.out","w",stdout);
	
	scanf("%d %d", &n, &p);
	
	for (s = 1; s <= p; s = s << 1){
		if (s & p){ sol *= n; sol %= MOD;}
		n=n*n; n %= MOD;
	}
	
	printf("%d\n", sol);
	
	return 0;
}