Pagini recente » Cod sursa (job #2266168) | Cod sursa (job #2404273) | Cod sursa (job #1449298) | Cod sursa (job #660555) | Cod sursa (job #1184118)
#include<stdio.h>
#include<algorithm>
#include<cstring>
#define maxn 25
#define maxs 100005
#define MOD 10000
using namespace std;
int n,m,S;
int s[maxs],aux[maxs];
long long X;
void read()
{
scanf("%d%d",&n,&m);
scanf("%lld",&X);
}
void solve()
{
S=n*(n+1)*m*(m+1)/4;
if(X>S || X<-S) {printf("0"); return;}
s[S+1]=1;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
{
for(int k=1;k<=2*S+1;k++)
{
aux[k]=s[k];
if(k-i*j>0 && s[k-i*j])
{
aux[k]=aux[k]+s[k-i*j];
if(aux[k]>=MOD) aux[k]-=MOD;
}
if(k+i*j<=2*S+1 && s[k+i*j])
{
aux[k]=aux[k]+s[k+i*j];
if(aux[k]>=MOD) aux[k]-=MOD;
}
}
for(int k=1;k<=2*S+1;k++) s[k]=aux[k];
}
printf("%d",s[X+S+1]);
}
int main()
{
freopen("diamant.in","r",stdin);
freopen("diamant.out","w",stdout);
read();
solve();
fclose(stdin);
fclose(stdout);
return 0;
}