Cod sursa(job #2765677)

Utilizator sanzianagrecuSanziana Grecu sanzianagrecu Data 29 iulie 2021 15:37:16
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.46 kb
#include <fstream>

using namespace std;

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

#define MOD 1999999973

long long logput(unsigned int a,unsigned int b){
    long long p = 1;
    while(b){
        if(b % 2 == 1)
            p = (p % MOD) * (a % MOD);
        a = (a % MOD) * (a % MOD);
        b /= 2;
    }
    return p % MOD;
}

int main(){

   unsigned int a, b;
   fin >> a >> b;
   fout << logput(a, b);

   return 0;
}