Pagini recente » Cod sursa (job #2610768) | Diferente pentru problema/mese intre reviziile 6 si 7 | Cod sursa (job #2637107) | Diferente pentru problema/norocoase intre reviziile 11 si 4 | Cod sursa (job #1566121)
#include <cstdio>
#define m = 1999999973;
unsigned int i, n, p;
long long a, sol = 1;
int main(){
freopen("lgput.in", "r", stdin);
freopen("lgput.out", "w", stdout);
scanf("%d %d", &n, &p);
a = n;
for(i = 0; (1<<i) <= p; ++i){
if(((1<<i) & p) > 0)
sol = (sol * a) % m;
a = (a * a) % m;
}
printf("%lld\n", sol);
}