Pagini recente » Cod sursa (job #2578648) | Cod sursa (job #1055297) | Cod sursa (job #1680697) | Cod sursa (job #271926) | Cod sursa (job #2483950)
#include <bits/stdc++.h>
#define MOD 10000
#define add 50000
#define rest(a) (a-a/MOD*MOD);
typedef long long ll;
ll n, i, j, m, x, k, mx;
ll list[100001], rep[100001];
int main()
{
freopen("diamant.in", "r", stdin);
freopen("diamant.out", "w", stdout);
scanf("%lld%lld%lld", &n, &m, &x);
list[0+add]=1;
mx=m*n*(n+1)*(m+1)/4;
if(x>=mx || x<=-mx){
printf("0");
return 0;
}
for(i=1; i<=n; ++i){
for(j=1; j<=m; ++j){
for(k=-mx+add; k<=mx+add; ++k){
rep[k]=list[k]+list[k-i*j]+list[k+i*j];
rep[k]=rest(rep[k]);
}
for(k=-mx+add; k<=mx+add; ++k) {list[k]=rep[k]; rep[k]=0;}
}
}
printf("%lld", list[x+add]);
fclose(stdin);
fclose(stdout);
return 0;
}