Cod sursa(job #2844125)

Utilizator robertanechita1Roberta Nechita robertanechita1 Data 3 februarie 2022 20:00:44
Problema Diamant Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <bits/stdc++.h>
#define mod 10000

using namespace std;

ifstream fin("diamant.in");
ofstream fout("diamant.out");

int n, m, x, a[410], k, dp[410][80006];

/// obs : 200*399
///dp[i][j] - nr de diamante cu pana la poz i cu val j

int main()
{
    fin >> n >> m >> x;
    for(int i = 1; i <= n; i++)
        for(int j = 1; j <= m; j++)
            a[++k] = i*j;
    x = x + 45000;
    dp[0][45000] = 1;
    for(int i = 1; i <= k; i++)
    {
        for(int j = 1; j <= x; j++)
            dp[i][j] = (dp[i - 1][j + a[i]] + dp[i - 1][j - a[i]] + dp[i - 1][j]) % mod;
    }
    fout << dp[k][x] % mod;
    return 0;
}