Pagini recente » Cod sursa (job #2626507) | Cod sursa (job #517752) | Cod sursa (job #2248689) | Cod sursa (job #411557) | Cod sursa (job #2452477)
#include <bits/stdc++.h>
#define MOD 10000;
#define offset 44100
using namespace std;
ifstream fin("diamant.in");
ofstream fout("diamant.out");
int n, m, x, v[402], z, dp[402][offset + offset + 2], s;
int main()
{
fin >> n >> m >> x;
for (int i = 1; i <= n; ++i)
for (int j = 1; j <= m; ++j)
v[++z] = i * j, s += v[z];
if (x > offset || x < -offset)
{
fout << 0;
return 0;
}
dp[z + 1][x + offset] = 1;
for (int index = z; index >= 1; --index)
{
for (int sum = s; sum >= -s; --sum)
{
dp[index][sum + offset] = dp[index + 1][sum + offset];
if (sum + v[index] <= offset)
dp[index][sum + offset] += dp[index + 1][sum + v[index] + offset];
if (sum - v[index] >= -offset)
dp[index][sum + offset] += dp[index + 1][sum - v[index] + offset];
dp[index][sum + offset] %= MOD;
}
}
fout << dp[1][offset];
return 0;
}