Cod sursa(job #1970861)

Utilizator andru47Stefanescu Andru andru47 Data 19 aprilie 2017 17:38:52
Problema 12-Perm Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <bits/stdc++.h>
#define MOD (1 << 20)
using namespace std;
int a[6];
int main()
{
    freopen("12perm.in" , "r", stdin);
    freopen("12perm.out" , "w", stdout);
    a[1] = 1 , a[2] = 2, a[3] = 6, a[4] = 12;
    int n;
    scanf("%d", &n);
    if (n <= 4)
        printf("%d", a[n]);
    else
    {
        for (int i = 5; i<=n; ++i)
        {
            long long nr = a[4] + a[2] + 2 * (i - 2);
            nr %= MOD;
            a[1] = a[2] , a[2] = a[3], a[3] = a[4] , a[4] = nr;
        }
        printf("%d\n", a[4]);
    }
    return 0;
}