Cod sursa(job #583828)

Utilizator coderninuHasna Robert coderninu Data 22 aprilie 2011 19:48:36
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include <cstdio>
#define mod 1999999973


using namespace std;

long long pow(long long a, long long b) {
	if (b == 0) return 1L;
	if (b == 1) return a;
	long long temp = pow(a, b >> 1);
	temp = (temp * temp) % mod;
	if (b & 1) temp = (temp * a) % mod;
	return temp;
}

long long a, b;

int main() {
	freopen("lgput.in", "r", stdin);
	freopen("lgput.out", "w", stdout);
	
	scanf("%lld %lld", &a, &b);
	printf("%lld", pow(a, b));

	return 0;
}