Cod sursa(job #2274359)
| Utilizator | Data | 1 noiembrie 2018 18:22:44 | |
|---|---|---|---|
| Problema | Ridicare la putere in timp logaritmic | Scor | 0 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.45 kb |
#include <iostream>
#include <csdtio>
using namespace std;
const long long mod = 1999999973;
long long exp_log(long long x, long long n){
int r = 1;
while(n){
if(n&1)
r=(1LL*r*x)%mod;
x=(1LL*x*x)%mod;
n/=2;
}
return r;
}
int main()
{
freopen("lgput.in","r",stdin);
freopen("lgput.out","w",stdout);
int n,p;
cin >> n >> p;
cout << exp_log(n,p);
return 0;
}
