Pagini recente » Cod sursa (job #546694) | Cod sursa (job #864224) | Cod sursa (job #949322) | Cod sursa (job #66951) | 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;
}