Pagini recente » Cod sursa (job #3168550) | Cod sursa (job #2112053) | Cod sursa (job #2451406) | Cod sursa (job #1794822) | Cod sursa (job #2664055)
#include <bits/stdc++.h>
using namespace std;
#define STOP fout.close(); exit(EXIT_SUCCESS);
ifstream fin("diamant.in");
ofstream fout("diamant.out");
///***********************
const int XMAX = 44'100, MOD = 1e4;
int n, m, x, dp[2][XMAX * 2 + 3], a[403], k, sum, line;
int main() {
fin >> n >> m >> x;
for (int i = 1; i <= n; i++)
for (int j = 1; j <= m; j++) {
a[++k] = i * j;
sum += a[k];
}
if (sum < abs(x)) {
fout << 0 << endl;
STOP
}
dp[line][XMAX] = 1;
x += XMAX;
sum += XMAX;
for (int i = 1; i <= k; i++, line ^= 1)
for (int j = 0; j <= sum; j++) {
dp[!line][j] = dp[line][j];
if (a[i] <= j)
dp[!line][j] += dp[line][j - a[i]];
dp[!line][j] += dp[line][j + a[i]];
dp[!line][j] %= MOD;
}
fout << dp[line][x] << endl;
STOP
}