Cod sursa(job #2583235)

Utilizator ivan.tudorIvan Tudor ivan.tudor Data 17 martie 2020 22:22:11
Problema 12-Perm Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.58 kb
#include<bits/stdc++.h>
using namespace std;
FILE*fin,*fout;


int main()
{
  fin=fopen("12perm.in","r");
fout=fopen("12perm.out","w");
  int n;
  fscanf(fin,"%d",&n);
  if(n==1){
    fprintf(fout,"1");
    return 0;
  }
  if(n==2){
    fprintf(fout,"2");
    return 0;
  }
  if(n==3){
    fprintf(fout,"6");
    return 0;
  }
  else if(n==4){
    fprintf(fout,"12");
    return 0;
  }
  int z1=12,z2=6,z3=2;
  for(int i=5;i<=n;i++){
    int zinou=(z1+z3+2*(i-2))&((1<<20)-1);
    z3=z2;
    z2=z1;
    z1=zinou;
  }
  fprintf(fout,"%d",z1);
  return 0;
}