Pagini recente » Cod sursa (job #3342104) | Cod sursa (job #2931126) | Cod sursa (job #3357646) | Cod sursa (job #3358125) | Cod sursa (job #3358123)
#include <stdio.h>
#include <string.h>
const int m = 1999999973;
int main()
{
unsigned int i, n, p;
long long a, sol = 1;
FILE *in, *out;
if((in=fopen("lgput.in", "r"))==0){
printf("eroare la deschiderea fisierului de citire!");
return 0;
}
if((out=fopen("lgput.out", "w"))==0){
printf("eroare la deschiderea fisierului de afisare!");
fclose(in);
return 0;
}
fscanf("%d %d", &n, &p, in);
a = n;
for (i = 0; (1<<i) <= p; ++ i)
{
if ( ((1<<i) & p) > 0)
sol= (sol * a) % m;
a=(a * a) % m;
}
fprintf("%lld\n", sol, out);
fclose(in);
fclose(out);
return 0;
}