Cod sursa(job #1496547)
Utilizator | Data | 5 octombrie 2015 10:18:15 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 10 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.4 kb |
#include <bits/stdc++.h>
const int MOD = 1999999973;
using namespace std;
ifstream fin("lgput.in");
ofstream fout("lgput.out");
int n,nr;
void ridlog(int k)
{
if(k <= 1)
nr = n;
else{
ridlog(k/2);
nr = nr*nr%MOD;
if(k%2 != 0)
nr *= n%MOD;
}
}
int main()
{
int k;
fin >> n >> k;
ridlog(k);
fout << nr;
return 0;
}