Cod sursa(job #2127701)

Utilizator tudor199G Tudor tudor199 Data 10 februarie 2018 22:31:43
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.42 kb
#include <iostream>
#include <fstream>

#define MOD 1999999973

using namespace std;

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

unsigned long long lgpow(int exp, int pow){
    if(pow == 1){
        return exp;
    }
    unsigned long long n = lgpow(exp, pow/2);
    return (((n * n) % MOD) * (pow & 1 ? exp : 1)) % MOD;
}

int main(){
	int n, put;
	fin>>n>>put;
	fout<<lgpow(n, put);
	return 0;
}