Pagini recente » Cod sursa (job #3250926) | Cod sursa (job #2875709) | Cod sursa (job #1918669) | Cod sursa (job #2320111) | Cod sursa (job #2203535)
#include <cstdio>
#define MAX_X 44100
#define MOD 10000
using namespace std;
int count[2*MAX_X+5];
int copie[2*MAX_X+5];
int main()
{
freopen( "diamant.in", "r", stdin );
freopen( "diamant.out", "w", stdout );
int n, m, k;
scanf( "%d%d%d", &n, &m, &k );
count[MAX_X]=1;
for( int i=1;i<=n;i++ )
for( int j=1;j<=m;j++ )
{
int val=i*j;
for( int x=-MAX_X;x<=MAX_X;x++ )
{
copie[x-val+MAX_X]=(copie[x-val+MAX_X]+count[x+MAX_X])%MOD;
copie[x+MAX_X]=(copie[x+MAX_X]+count[x+MAX_X])%MOD;
copie[x+val+MAX_X]=(copie[x+val+MAX_X]+count[x+MAX_X])%MOD;
}
for( int x=-MAX_X;x<=MAX_X;x++ )
{
count[x+MAX_X]=copie[x+MAX_X];
copie[x+MAX_X]=0;
}
}
if( -MAX_X<=k && k<=MAX_X )
printf( "%d", count[k+MAX_X] );
else
printf( "0" );
return 0;
}