Pagini recente » Cod sursa (job #2460261) | Cod sursa (job #2709282) | Cod sursa (job #165427) | Cod sursa (job #2525516) | Cod sursa (job #2878658)
#include <bits/stdc++.h>
#define MOD 10000
using namespace std;
ifstream fin("diamant.in");
ofstream fout("diamant.out");
int n, m, X, dp[2][100000];
int main()
{
int i, j, x, val, k, ind;
fin >> n >> m >> X;
if (abs(X) > n * (n + 1) * m * (m + 1) / 4)
{
fout << "0\n";
return 0;
}
val = n * (n + 1) * m * (m + 1) / 4;
dp[1][val] = ind = 1;
for (i = 1; i <= n; i++)
for (j = 1; j <= m; j++, ind ^= 1)
{
x = i * j;
for (k = 0; k <= 2 * val; k++)
{
dp[ind ^ 1][k] = dp[ind][k];
if (k + x <= 2 * val)
dp[ind ^ 1][k] += dp[ind][k + x];
if (k - x >= 0)
dp[ind ^ 1][k] += dp[ind][k - x];
dp[ind ^ 1][k] %= MOD;
}
}
fout << dp[ind][X + val] << "\n";
return 0;
}