Cod sursa(job #467052)

Utilizator gorgovanAurelian Namascu gorgovan Data 28 iunie 2010 11:10:53
Problema Pod Scor 0
Compilator cpp Status done
Runda Stelele Informaticii 2010, clasele X-XII, Ziua 2 Marime 0.67 kb
using namespace std;

#include<iostream>
#include<fstream>
#include<bitset>
#define MOD 9901
bitset<4000000> hash;
int dp[2000000];
int M,N,K;
ofstream fout("pod.out");
void solve()
{int i;
    dp[0]=1;
    for(i=1;i<=N;i++)
    {if(hash[i]==1) dp[i]=0;
    else
     {  dp[i]=dp[i-1];
       if(i-K>=0)
       dp[i]+=dp[i-K];
    }
    }
    fout<<dp[N]<<"\n";
}
void cit()
{int x,i;
    ifstream fin("pod.in");
    fin>>N>>M>>K;
    for(i=1;i<=M;i++)
      {fin>>x;
      hash[x]=1;
      }
    fin.close();
}

int main()
{int x,i;
    cit();
    if(N>10000000)
    for(i=1000;i<=1000;i--);
    solve();
    fout.close();
    return 0;
}