Pagini recente » Cod sursa (job #210181) | Cod sursa (job #676082) | Cod sursa (job #161368) | Cod sursa (job #1431328) | Cod sursa (job #448387)
Cod sursa(job #448387)
#include <fstream>
using namespace std;
const char FIN[] = "diamant.in";
const char FOU[] = "diamant.out";
const int MOD = 10000;
const int MAX = 1 << 16;
int M, N, X;
int i, j, l;
int V[MAX], AUX[MAX];
int main()
{
ifstream f(FIN);
ofstream g(FOU);
f >> M >> N >> X;
int limit = N * M * (N + 1) * (M + 1) >> 2;
if ((X = abs(X)) > limit)
g << "0";
else
{
V[0] = 1;
for (i = 1; i <= M ; ++i)
for (j = 1; j <= N; ++j)
{
for (l = 0; l <= limit; ++l)
AUX[l] = V[ abs( l - i * j ) ] + V[ l ] + V[ l + i * j ], AUX[l] %= MOD;
memcpy(V , AUX , sizeof(AUX));
}
g << V[X] % MOD;
}
return 0;
}