Cod sursa(job #2164570)
Utilizator | Simion Cristian CristyXtreme | Data | 13 martie 2018 08:19:25 |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.49 kb |
#include <cstdio>
using namespace std;
int mod=1999999973;
long long int ridicare_la_putere(long long int n,long long int p)
{
long long int sol=n;
n=1;
for(;p;p>>=1)
{
if(p&1)
n=n*sol%mod;
sol=sol*sol%mod;
}
return n;
}
int main()
{
long long int n,p;
FILE *f=fopen("lgput.in","r"),*g=fopen("lgput.out","w");
fscanf(f,"%lli %lli",&n,&p);
fprintf(g,"%lli",ridicare_la_putere(n,p));
return 0;
}