Cod sursa(job #1291946)
Utilizator | Data | 13 decembrie 2014 15:21:58 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 30 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.43 kb |
#include <fstream>
using namespace std;
ifstream in("lgput.in");
ofstream out("lgput.out");
int main()
{
long long n,p,mod=1999999973,i,j,aux,rez=0;
in>>n>>p;
aux=n;
if(p%2==0)
{
for(i=1;i<p/2;i++)
n=(n*aux)%mod;
rez=(n*n)%mod;
}
else
{
for(j=1;j<p/2;j++)
n=(n*aux)%mod;
rez=(n*n*aux)%mod;
}
out<<rez;
return 0;
}