Cod sursa(job #2098248)

Utilizator flibiaVisanu Cristian flibia Data 2 ianuarie 2018 16:39:15
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.37 kb
#include <bits/stdc++.h>
#define mod 1999999973
#define ll long long

using namespace std;

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

long long a, p;

ll lg(ll a, ll p){
	ll rs = 1;
	while(p){
		if(p & 1) 
			rs = (rs * a) % mod;
		a = (a * a) % mod;
		p /= 2;
	}
	return rs;
}

int main(){
	in >> a >> p;
	out << lg(a, p);
	return 0;
}