Cod sursa(job #2171130)
Utilizator | Data | 15 martie 2018 11:19:27 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.46 kb |
#include <fstream>
#define k 1999999973
using namespace std;
ifstream fin ("lgput.in");
ofstream fout ("lgput.out");
long long a, b;
long long putere (long long n, long long p)
{
long long x;
if(p==0)
return 1;
else
{
x = putere (n, p/2);
if(p%2 == 0)
return (x*x)%k;
else
return ((x*x)%k)*n %k;
}
}
int main ()
{
fin >> a >> b;
fout << putere (a,b);
}