Cod sursa(job #1337416)

Utilizator IulianBoboUAIC Boboc Iulian IulianBobo Data 8 februarie 2015 23:02:57
Problema Ridicare la putere in timp logaritmic Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.42 kb
#include <fstream>
using namespace std;

#define MOD 1999999973

long long n, p,x;

ifstream f("lgput.in");
ofstream g("lgput.out");

void compute()
{
	x = 1;
	while (p > 1)
	{
		if (p % 2 == 1)
		{
			x = x % MOD*(n % MOD) % MOD;
			--p;
		}
		else
		{
			x = x % MOD* (n % MOD)*(n % MOD) % MOD;
			p /= 2;
		}
	}
	g << x;
}


int main()
{
	f >> n >> p;
	compute();
	f.close();
	g.close();
}