Cod sursa(job #2689760)

Utilizator CozehNita Horia Teodor Cozeh Data 22 decembrie 2020 01:57:49
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.4 kb
#include <bits/stdc++.h>
#define ll long long
using namespace std;

ll powlg(ll x, ll b, ll mod) {
	if(b == 0) return 1;
	if(b == 1) return x % mod;
	if(b%2 == 0) return powlg(x * x, b/2, mod) % mod;
	if(b%2 == 1) return (x * powlg(x * x, b/2, mod)) % mod;
	return 0;
}

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

int main(){
	ll x,y;
	fin>>x>>y;
	fout<<powlg(x, y, 1999999973);	
}