Pagini recente » Cod sursa (job #406763) | Cod sursa (job #376430) | Cod sursa (job #471946) | Cod sursa (job #2548566) | Cod sursa (job #1462266)
#include <cstdio>
#include <cstring>
FILE* in=fopen("diamant.in","r");
FILE* out=fopen("diamant.out","w");
int n,m,k;
int bmod[90008];
int baux[90008];
int *mod,*aux;
int main()
{
mod=bmod+45003;
aux=baux+45003;
fscanf(in,"%d%d%d",&n,&m,&k);
mod[0]=1;
if(k>=45000 || k<=-45000)
{
fprintf(out,"0\n");
return 0;
}
int min=0;
int max=0;
for(int i=1; i<=n; i++)
{
for(int j=1; j<=m; j++)
{
memset(baux,0,sizeof baux);
for(int f=min; f<=max; f++)
{
//if(!mod[f])
// continue;
for(int g=-1; g<=1; g++)
{
aux[f+i*j*g]+=mod[f];
if(aux[f+i*j*g]>=10000)
aux[f+i*j*g]-=10000;
}
}
min=min-i*j;
max=max+i*j;
for(int f=min; f<=max; f++)
{
mod[f]=aux[f];
}
}
}
fprintf(out,"%d\n",mod[k]);
return 0;
}