Cod sursa(job #2630161)

Utilizator CraniXortDumitrescul Eduard CraniXort Data 24 iunie 2020 15:57:31
Problema 12-Perm Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.55 kb
#include <bits/stdc++.h>
#define mod 1048576

std::ifstream fin ("12perm.in");
std::ofstream fout ("12perm.out");

int main(){
    int n, i;
    fin >> n;
    int x[4] = {0, 1, 2, 6};
    if (n == 1)
        fout << 1;
    else if (n == 2)
        fout << 2;
    else if (n == 3)
        fout << 6;
    else{
        for (i=4; i<=n; i++){
            x[i%4] = x[((i%4+4)-1)%4] + 2 * x[((i%4+4)-3)%4] + 2 * (i-2);
            while (x[i%4] > mod)
                x[i%4] -= mod;
        }
        fout << x[n%4];
    }
    return 0;
}