Cod sursa(job #1862907)

Utilizator Vasile_RotaruVasea Rotaru Vasile_Rotaru Data 30 ianuarie 2017 14:07:22
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.39 kb
#include<fstream>

using namespace std;

ifstream cin("lgput.in");
ofstream cout("lgput.out");

#define MOD 1999999973

long at_pow(long long num,long long exp)
{
	long long result=1;
	for(int i=0;(1<<i)<=exp;++i) {
		if((1<<i & exp))
		result=(result*num)%MOD;

		num=(num*num)%MOD;
	}
	return result;
}

long a,b;
int main()
{
	cin>>a>>b;
	cout<<at_pow(a,b);
	return 0;
}