Pagini recente » Cod sursa (job #814559) | Cod sursa (job #1588058) | Cod sursa (job #494961) | Cod sursa (job #2555402) | Cod sursa (job #1632276)
#include <stdio.h>
#define MOD 1999999973
typedef struct {
unsigned long long int N;
unsigned long long int P;
} date_struct;
date_struct get_date(char* file_name) {
date_struct date;
FILE *in = fopen(file_name, "r");
fscanf(in, "%llu %llu", &(date.N), &(date.P));
fclose(in);
return date;
}
unsigned long long int put_log(unsigned long long int N, unsigned long long int P) {
if (P == 0) {
return 1;
}
if (P == 1) {
return N % MOD;
}
if (P % 2) {
return (N * put_log((N * N) % MOD, P / 2) ) % MOD;
}
return put_log((N * N) % MOD, P / 2) % MOD;
}
int main () {
date_struct date = get_date("lgput.in");
FILE *out = fopen("lgput.out", "w");
fprintf(out, "%llu\n", put_log(date.N, date.P));
fclose(out);
return 0;
}