Pagini recente » Cod sursa (job #2251936) | Cod sursa (job #630973) | Cod sursa (job #1111906) | Cod sursa (job #377835) | Cod sursa (job #2760245)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream in("diamant.in");
ofstream out("diamant.out");
int n, m, x, dp[90005][2], sum;
int main() {
ios_base::sync_with_stdio(false);
in.tie(NULL), out.tie(NULL);
in >> n >> m >> x;
x = abs(x);
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= m; j++) {
sum += i * j;
}
}
if (x > sum) {
out << 0;
return 0;
}
dp[sum][1] = 0;
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= m; j++) {
for (int d = 0; d <= 2 * sum; d++) {
dp[d][0] = dp[d][1];
}
for (int d = 0; d <= 2 * sum; d++) {
if (i * j + d <= 2 * sum) {
dp[d][1] += dp[d + i * j][0];
}
if (d - i * j >= 0) {
dp[d][1] += dp[d - i * j][0];
}
dp[d][1] %= 10000;
}
}
}
out << dp[x + sum][1];
return 0;
}