Pagini recente » Cod sursa (job #2182818) | Cod sursa (job #277433) | Cod sursa (job #1102430) | Cod sursa (job #350804) | Cod sursa (job #377198)
Cod sursa(job #377198)
#include <fstream>
using namespace std;
const char InFile[]="lgput.in";
const char OutFile[]="lgput.out";
const unsigned long long int M=1999999973;
unsigned long long int N,P;
unsigned long long int pow(unsigned long long int p){
if(p==2){return (N*N)%M;}
else{
if(p%2==0){
unsigned long long int half=pow(p/2)%M;
return ((half%M)*(half%M))%M;
}else{
return (N*pow(p-1))%M;
}
}
}
int main(){
ifstream fin(InFile);
fin>>N>>P;
fin.close();
ofstream fout(OutFile);
fout<<pow(P);
fout.close();
return 0;
}