Cod sursa(job #1876969)

Utilizator leraValeria lera Data 12 februarie 2017 19:56:51
Problema 12-Perm Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.42 kb
#include <iostream>
#include <fstream>
#define Nmax 15000001
using namespace std;
ifstream fin("12perm.in");
ofstream fout("12perm.out");
int dp[5],n;
const int mod=1048576;
int main()
{
    fin>>n;
    if(n<=2)
    {
        fout<<n;
        return 0;
    }
    dp[1]=1;dp[2]=2;dp[3]=6;dp[0]=12;
    for(int i=5;i<=n;i++)
        dp[i%4]=(dp[(i-1)%4]+dp[(i-3)%4]+2*(i-2))%mod;
    fout<<dp[n%4];
    return 0;
}