Cod sursa(job #636499)

Utilizator a_h1926Heidelbacher Andrei a_h1926 Data 19 noiembrie 2011 20:50:04
Problema Dirichlet Scor 20
Compilator cpp Status done
Runda .com 2011 Marime 0.67 kb
#include <cstdio>

#define Mod 9999991
#define NMax 1005

using namespace std;

long long N, S, DP[NMax][NMax];

int main()
{
    freopen ("dirichlet.in", "r", stdin);
    freopen ("dirichlet.out", "w", stdout);
    scanf ("%lld", &N);
    DP[0][0]=1;
    for (int i=0; i<=N; ++i)
    {
        DP[0][i]=1;
    }
    for (int i=1; i<=N; ++i)
    {
        DP[i][0]=1;
        for (int j=1; j<=i; ++j)
        {
            DP[i][j]=DP[i][j-1]+DP[i-1][j];
            DP[i][j]%=Mod;
        }
        for (int j=i+1; j<=N; ++j)
        {
            DP[i][j]=DP[i][j-1];
        }
    }
    printf ("%lld\n", DP[N][N]-DP[N][N-1]);
    return 0;
}