Cod sursa(job #3182728)
Utilizator | Dobre Radu Fabian dobreradu | Data | 9 decembrie 2023 14:20:23 |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.42 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream in("lgput.in");
ofstream out("lgput.out");
const int MOD = 1999999973;
long long lgput( long long val, int put ){
if( put == 1 )
return val;
if( put % 2 )
return (lgput(val, put-1)*val) % MOD;
return lgput((val*val)%MOD, put/2);
}
int main()
{
int n, pw;
in >> n >> pw;
out << lgput(n, pw);
return 0;
}