Cod sursa(job #795386)

Utilizator alexalghisiAlghisi Alessandro Paolo alexalghisi Data 8 octombrie 2012 17:10:38
Problema Pascal Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.95 kb
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;

int v[5000013];
int g[5000013];

int main()
{
    int n,mod;
    ifstream f("pascal.in");
    ofstream r("pascal.out");
    f>>n>>mod;

    v[++v[0]]=0;
    v[++v[0]]=1;
    v[++v[0]]=0;

    for(int i=1;i<=n;i++)
    {
        if(i%2==1)
        {
            g[0]=0;
            g[++g[0]]=0;
            for(int j=2;j<=v[0];j++)
                g[++g[0]]=v[j]+v[j-1];
            g[++g[0]]=0;
        }
        else
        {
            v[0]=0;
            v[++v[0]]=0;
            for(int j=2;j<=g[0];j++)
                v[++v[0]]=g[j]+g[j-1];
            v[++v[0]]=0;
        }
    }
    int nr=0;
    if(n%2==0)
    for(int i=1;i<=v[0];i++)
        if(v[i] && v[i]%mod==0)
            nr++;
        else
            for(int i=1;i<=g[0];i++)
                if(g[i] && g[i]%mod==0)
                    nr++;
    r<<nr;
    return 0;
}