Pagini recente » Cod sursa (job #890647) | Cod sursa (job #1853860) | Cod sursa (job #2866339) | Cod sursa (job #2442153) | Cod sursa (job #35210)
Cod sursa(job #35210)
#include <cstdio>
#include <cstring>
#define dim 65536
int N, M, K;
int A[2][dim<<1];
long X, S;
void mod( int &x )
{
x -= x >= 10000 ? 10000 : 0;
}
int main()
{
freopen("diamant.in", "r", stdin);
freopen("diamant.out", "w", stdout);
scanf("%d %d %ld", &N, &M, &X);
int i, j;
long k;
for(i=1; i<=N; ++i)
for(j=1; j<=M; ++j)
S += i * j;
if( X > S )
{
printf("0");
return 0;
}
A[0][dim] = 1;
for(i=1; i<=N; ++i)
for(j=1; j<=M; ++j)
{
++ K;
for(k=S; k>=-S; --k)
{
A[K&1][k+dim] += A[(K-1)&1][k+dim] + A[(K-1)&1][k-i*j+dim] + A[(K-1)&1][k+i*j+dim];
mod(A[K&1][k+dim]);
}
memset(A[(K-1)&1], 0, sizeof(A[(K-1)&1]));
}
printf("%d", A[(N*M)&1][X+dim]);
fclose(stdin);
fclose(stdout);
return 0;
}