Cod sursa(job #723858)

Utilizator gener.omerGener Omer gener.omer Data 25 martie 2012 23:17:57
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.4 kb
#include <iostream>
#include <cstdio>


using namespace std;

#define MAX 1999999973

long long  N, P, result = 1;

int main(){
	freopen("lgput.in",  "rt", stdin);
	freopen("lgput.out", "wt", stdout);
	cin >> N >> P;
	long long tmp = N;
	for(int i = 0; i < 32; ++i){
		if(P & (1 << i))
			result = (result * tmp) % MAX;	
			tmp = (tmp * tmp) % MAX;
	}
	cout << result;
	
	return 0;
}