Pagini recente » Cod sursa (job #2099458) | Cod sursa (job #1400917) | Cod sursa (job #2735858) | Cod sursa (job #1234686) | Cod sursa (job #2492341)
#include <bits/stdc++.h>
#define ull unsigned long long int
using namespace std;
const int m = 1999999973;
ull ridicare_la_putere(unsigned int N, unsigned int P){
if (P < 0) {
return ridicare_la_putere(1/N, -P);
}
else if (P == 0){
return 1;
}
else if (P == 1){
return N;
}
else if (P % 2 == 0){
return ridicare_la_putere(N*N, P/2);
}
else if (P % 2 == 1){
return N*ridicare_la_putere(N*N, (P-1)/2);
}
}
int main(){
ifstream cin("lgput.in");
ofstream cout("lgput.out");
unsigned int N, P;
cin >> N >> P;
cout << ridicare_la_putere(N,P)%m;
return 0;
}