Pagini recente » Cod sursa (job #2324199) | Cod sursa (job #2880513) | Cod sursa (job #1433305) | Cod sursa (job #3158488) | Cod sursa (job #2760452)
#include <iostream>
#include <stdio.h>
using namespace std;
const long long M = 1999999973;
long long modmult(long long x, long long y){
return ((x % M) * (y % M)) % M;
}
int putere(int a, int exp){ // (a^exp)%M
int m = 1;
long long ai = a, afin = 1;
for (int i=0; i<32; i++)
{
if (exp & m)
afin = modmult(ai, afin);
ai = modmult(ai, ai);
m <<= 1;
}
return afin;
}
int main()
{
freopen("lqput.in", "r", stdin);
freopen("lgput.out", "w", stdout);
long long n, p;
scanf("%lld %lld", &n, &p);
printf("%d", putere(n, p));
}
// 2 4