Pagini recente » Diferente pentru problema/cover intre reviziile 16 si 7 | Atasamentele paginii F. Piese3 | Cod sursa (job #872302) | Cod sursa (job #1516318) | Cod sursa (job #763638)
Cod sursa(job #763638)
#include <stdio.h>
const unsigned long MODULO = 1999999973;
unsigned long n, p, result, i;
FILE *in, *out;
int main()
{
in = fopen("lgput.in", "r");
out = fopen("lgput.out", "w");
fscanf(in, "%lu %lu", &n, &p);
result = 1;
for(i = 0; (1 << i) <= p; i++)
{
if((1 << i) & p)
result = (result * n) % MODULO;
n = (n * n) % MODULO;
}
fprintf(out, "%lu\n", result);
fclose(in);
fclose(out);
return 0;
}