Cod sursa(job #2133474)
Utilizator | Popescu Vlad Druffbaum | Data | 16 februarie 2018 23:51:41 |
---|---|---|---|
Problema | Sortari2 | Scor | 60 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.49 kb |
#include <cstdio>
/// SOL = (n! - fib(2n-1))
#define MOD 999017
int main() {
FILE *fin, *fout;
int n, f, f1, f2, f3;
fin = fopen("sortari2.in", "r");
fscanf(fin, "%d", &n);
fclose(fin);
f = 1;
for (int i = 2; i <= n; ++i) {
f = (i * f) % MOD;
}
f2 = f3 = 1;
for (int i = 3; i <= 2 * n - 1; ++i) {
f1 = (f2 + f3) % MOD;
f3 = f2;
f2 = f1;
}
fout = fopen("sortari2.out", "w");
fprintf(fout, "%d\n", f - f1);
fclose(fout);
return 0;
}