Pagini recente » Cod sursa (job #2246919) | Cod sursa (job #560853) | Cod sursa (job #1834491) | Cod sursa (job #150119) | Cod sursa (job #1463358)
# include <bits/stdc++.h>
const int pls = 85000;
using namespace std;
ifstream fi("diamant.in");
ofstream fo("diamant.out");
int dp[2][pls + 5];
int main(void)
{
int n,m,x;
fi>>n>>m>>x;
dp[0][0] = 1;
bool ok = 0;
if (abs(x) >= pls) return fo << "0\n",0;
int sum = 0;
for (int i = 1;i <= n;++i)
for (int j = 1;j <= m;++j)
{
ok = 1 - ok;
int add = i*j;
sum += i*j;
for (int k = 0;k <= sum;++k) dp[ok][k] = dp[1-ok][k];
for (int k = 0;k <= sum;++k)
{
dp[ok][k] += dp[1-ok][abs(k - add)];
if (dp[ok][k] >= 10000) dp[ok][k] -= 10000;
dp[ok][k] += dp[1-ok][k + add];
if (dp[ok][k] >= 10000) dp[ok][k] -= 10000;
}
}
return fo << dp[ok][x] << '\n',0;
}