Cod sursa(job #2374813)
Utilizator | Data | 7 martie 2019 20:36:58 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.51 kb |
#include<fstream>
#include<iostream>
#include<bitset>
using namespace std;
ifstream fin("lgput.in");
ofstream fout("lgput.out");
long long n,i,j,sol,k,ok,aux,p;
int main(){
fin>>n>>p;
sol=1;
while(p!=1){
if(p%2==0){
n=n*n;
n%=1999999973;
}
else{
sol*=n;
sol%=1999999973;
n=n*n;
n%=1999999973;
}
p=p/2;
}
sol*=n;
sol%=1999999973;
fout<<sol;
return 0;
}