Cod sursa(job #2014367)

Utilizator PopoviciRobertPopovici Robert PopoviciRobert Data 23 august 2017 15:20:07
Problema 12-Perm Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <bits/stdc++.h>

const int MOD = (int) 1048576;

int main() {
    FILE *fi, *fout;
    int n, a, b, c;
    fi = fopen("12perm.in" ,"r");
    fout = fopen("12perm.out" ,"w");
    fscanf(fi,"%d " ,&n);
    if(n == 1)
       fprintf(fout,"1");
    else if(n == 2)
       fprintf(fout,"2");
    else if(n == 3)
       fprintf(fout,"6");
    else if(n == 4)
       fprintf(fout,"12");
    else {
       a = 2;
       b = 6;
       c = 12;
       for(int i = 5; i <= n; i++) {
           int aux = ((c + a + 2 * (i - 2)) & (MOD - 1));
           a = b;
           b = c;
           c = aux;
       }
       fprintf(fout,"%d" ,c);
    }
    fclose(fi);
    fclose(fout);
    return 0;
}