Cod sursa(job #2336139)
Utilizator | Data | 4 februarie 2019 20:18:50 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 10 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.43 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream fi("lgput.in");
ofstream fo("lgput.out");
const int mo=1999999973;
long int ridicare(long int a, long int b)
{
long int r=1;
while(b)
{
if(b%2)
r = r * a;
a=a * a;
b=b/2;
}
return r%mo;
}
int main()
{
long int n,p;
fi>>n>>p;
fo<<ridicare(n,p);
return 0;
}