Pagini recente » Clasament gicu_01 | Cod sursa (job #204428) | Monitorul de evaluare | Clasament no_commies_aloud | Cod sursa (job #429521)
Cod sursa(job #429521)
#include <fstream>
using namespace std;
const int MOD = 10000;
const int MAX = 44100;
ifstream fin ("diamant.in");
ofstream fout ("diamant.out");
int N, M, X, A[2*MAX + 3];
int main()
{
fin >> N >> M >> X;
if(X < -MOD || X > MOD)
{
fout << 0;
return 0;
}
A[MAX] = 1;
for(int i = 1; i <= N; ++i)
for(int j = 1; j <= M; ++j)
{
int aux[2*MAX + 3];
memcpy(aux, A, sizeof A);
for(int k = 2*MAX; k >= 0; --k)
{
aux[k] = A[k-i*j] + A[k] + A[k+i*j];
aux[k] %= MOD;
}
memcpy(A, aux, sizeof aux);
}
fout << A[MAX + X];
}