Pagini recente » Cod sursa (job #3171546) | Cod sursa (job #3130268) | Cod sursa (job #2585579) | Cod sursa (job #41091) | Cod sursa (job #1659881)
#include<cstdio>
const int V=44100;
const int MOD=10000;
const int N=20;
int ki[2*V+N];
int k1[2*V+N];
int ob[N*N*2+N];
int n,m,x;
void upd(int&x){
if(x>MOD)
x-=MOD;
}
int modul(int x){
if(x<0)
return -x;
return x;
}
int main(){
freopen("diamant.in","r",stdin);
freopen("diamant.out","w",stdout);
scanf("%d%d%d",&n,&m,&x);
if(modul(x)>V){
printf("0");
return 0;
}
int k=0;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
ob[++k]=i*j;
ki[V]=1;
for(int i=1;i<=k;i++){
for(int j=0;j<2*V+N;j++)
k1[j]=ki[j];
for(int j=0;j<2*V+N;j++){
if(j+ob[i]<2*V+N){
ki[j+ob[i]]+=k1[j];
upd(ki[j+ob[i]]);
}
if(j-ob[i]>=0){
ki[j-ob[i]]+=k1[j];
upd(ki[j-ob[i]]);
}
}
}
printf("%d",ki[V+x]);
return 0;
}