Pagini recente » Cod sursa (job #1912674) | Cod sursa (job #49163) | Cod sursa (job #2910796) | Cod sursa (job #561426) | Cod sursa (job #2204205)
#include <stdio.h>
#define MAXX 44100
#define MOD 10000
int count[2*MAXX],copie[2*MAXX];
int main(){
FILE *fin=fopen("diamant.in","r");
FILE *fout=fopen("diamant.out","w");
int n,m,x,i,j,val,k;
fscanf(fin,"%d%d%d",&n,&m,&x);
if(-MAXX<=x && x<=MAXX){
count[MAXX]=1;
for(i=1; i<=n; i++)
for(j=1; j<=m; j++){
val=i*j;
for(k=0; k<=2*MAXX; k++){
copie[k-val]=(copie[k-val]+count[k])%MOD;
copie[k ]=(copie[k ]+count[k])%MOD;
copie[k+val]=(copie[k+val]+count[k])%MOD;
}
for(k=0; k<=2*MAXX; k++){
count[k]=copie[k];
copie[k]=0;
}
}
fprintf(fout,"%d\n",count[x+MAXX]);
}else
fprintf(fout,"0\n");
fclose(fin);
fclose(fout);
return 0;
}