Cod sursa(job #1330526)

Utilizator gabrielinelusGabriel-Robert Inelus gabrielinelus Data 30 ianuarie 2015 19:17:09
Problema 12-Perm Scor 75
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <cstdio>


#define MOD 1048575
#define Nmax 15000005

using namespace std;
int A[Nmax],B[Nmax];

int main()
{
    freopen("12perm.in","r",stdin);
    freopen("12perm.out","w",stdout);


    A[1] = 1;  B[1] = 0;
    A[2] = 2;  B[2] = 0;
    A[3] = 4;  B[3] = 2;
    A[4] = 8;  B[4] = 4;
    A[5] = 12; B[5] = 8;
    A[6] = 18; B[6] = 16;
    A[7] = 28; B[7] = 28;
    A[8] = 42; B[8] = 46;

    int N;
    scanf("%d",&N);
    ///A[i] = A[i-1] + A[i-3] + 2
    ///B[i] = B[i-1] + A[i-2]

    for(int i = 9; i <= N; ++i)
    {
        A[i] = (A[i-1] + A[i-3] + 2)&MOD;
        B[i] = (B[i-1] + A[i-2])&MOD;
    }
    printf("%d\n",(A[N]+B[N])&MOD);
    return 0;
}