Pagini recente » Cod sursa (job #665864) | Cod sursa (job #1185587) | Cod sursa (job #584782) | Cod sursa (job #1279415) | Cod sursa (job #1552942)
#include<fstream>
#include<iostream>
#include <cmath>
#define mod 10000
using namespace std;
ifstream f("diamant.in");
ofstream g("diamant.out");
int N, M ,X, dp[2][88210], val, s, sMax;
int main()
{
f >> N >> M >> X;
sMax = ((N *(N + 1))/2) * ((M *(M + 1))/2);
dp[0][sMax] = 1;
for(int i = 1; i <= N; i++)
for(int j = 1; j <= M ;j++) {
val = i * j;
for(int k = -s + sMax; k <= s + sMax; k++)
{
dp[1][k - val] = dp[0][k] % mod;
dp[1][k + val] = dp[0][k] % mod;
}
s += i * j;
for(int k = -s +sMax; k <= s +sMax; k++){
dp[0][k] = (dp[0][k] + dp[1][k]) % mod;
dp[1][k] = 0;
}
}
if(abs(X) > sMax) g << 0;
else g << dp[0][X + sMax];
return 0;
}