Pagini recente » Cod sursa (job #431602) | Monitorul de evaluare | Cod sursa (job #1677224) | Cod sursa (job #2544909) | Cod sursa (job #607422)
Cod sursa(job #607422)
#include <stdio.h>
long long powlg(long long n, long long p, long long div)
{
long long result = 1;
do
{
int b = p % 2;
if (b)
result = (result * n) % div;
n = (n * n) % div;
p = p / 2;
} while (p > 0);
return result;
}
int main()
{
long long n, p,c;
freopen("modulo.in", "r", stdin);
freopen("modulo.out", "w", stdout);
scanf("%d %d %d", &n, &p, &c);
printf("%lld", powlg(n, p, c));
return 0;
}