Cod sursa(job #3148830)

Utilizator addanciuAdriana Danciu addanciu Data 4 septembrie 2023 16:22:10
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>
#include <vector>
#include <algorithm>
#include <cstring>
#include <unordered_map>
#include <stack>
//#define CONSOLE /// daca ai in consola
#define int long long
using namespace std;

ifstream fin("lgput.in");
ofstream fout("lgput.out");
 
#ifdef CONSOLE
    #include <iostream>
    #define fin cin 
    #define fout cout 
#endif
int lgpow(int n,int x){
    if(n==0) return 1;
    if(n%2) return x*lgpow((n-1)/2,x*x%1999999973)%1999999973;
    return lgpow(n/2,x*x%1999999973)%1999999973;
}
signed main() {
    int n,x;
    fin>>n;
    fin>>x;
    swap(n,x);
    fout<<lgpow(n,x);
    return 0;
}