Cod sursa(job #2057987)

Utilizator DruffbaumPopescu Vlad Druffbaum Data 4 noiembrie 2017 23:08:30
Problema 12-Perm Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.45 kb
#include <cstdio>

const int MAXN = 1e7 + 6e6;
#define MOD (1 << 20)

int v[MAXN + 1];

int main() {
  int n;
  FILE *f = fopen("12perm.in", "r");
  fscanf(f, "%d", &n);
  fclose(f);
  v[1] = 1;
  v[2] = 2;
  v[3] = 6;
  v[4] = 12;
  for (int i = 5; i <= n; ++i) {
    v[i] = ((1LL * 2 * (i - 2) & (MOD - 1)) + v[i - 1] + v[i - 3]) & (MOD - 1);
  }
  f = fopen("12perm.out", "w");
  fprintf(f, "%d\n", v[n]);
  fclose(f);
  return 0; 
}