Cod sursa(job #2990876)
Utilizator | Data | 8 martie 2023 18:20:18 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.36 kb |
#include<bits/stdc++.h>
using namespace std;
const int N = 1999999973;
ifstream in ("lgput.in");
ofstream out("lgput.out");
// auto& in = cin;
// auto& out = cout;
int main(){
long long n, p;
in>>n>>p;
long long rez = 1;
long long crt = n;
for(;p; p/= 2) {
if(p % 2 == 1)
rez = (rez * crt) % N;
crt = (crt * crt) % N;
}
out<<rez<<endl;
return 0;
}