Pagini recente » Cod sursa (job #2065695) | Cod sursa (job #947659) | Cod sursa (job #2470280) | Cod sursa (job #1114348) | Cod sursa (job #1461522)
#include <cstdio>
using namespace std;
#define Nmax 22
#define Smax 88202
#define Mod 10000
FILE *f = fopen ( "diamant.in", "r" );
FILE *g = fopen ( "diamant.out", "w" );
int D[2][Smax];
const int offset = 44100;
int main(){
int X, N, M;
fscanf ( f, "%d%d%d", &N, &M, &X );
if ( X > offset || X < -offset ){
fprintf ( g, "0" );
return 0;
}
D[0][offset] = 1;
int ind = 0;
for ( int i = 1; i <= N; ++i ){
for ( int j = 1; j <= M; ++j ){
ind ^= 1;
for ( int k = -offset; k <= offset; ++k ){
int A = 0, B = 0, C = 0;
if ( k-(i*j) >= -offset )
A = D[ind^1][offset+k-(i*j)];
if ( k+(i*j) <= offset)
B = D[ind^1][offset+k+(i*j)];
C = D[ind^1][offset+k];
D[ind][offset+k] = A+B+C;
D[ind][offset+k] %= Mod;
}
}
}
fprintf ( g, "%d", D[ind][offset+X] );
return 0;
}