Pagini recente » Cod sursa (job #1529217) | Cod sursa (job #1695279) | Cod sursa (job #2219181) | Cod sursa (job #1447176) | Cod sursa (job #799825)
Cod sursa(job #799825)
#include<stdio.h>
FILE*f=fopen("diamant.in","r");
FILE*g=fopen("diamant.out","w");
int n,m,x,k,v[401],nr,w1[100000],max;
int w[100000];
int main()
{
fscanf(f,"%d%d%d",&n,&m,&x);
for(int i=1;i<=n;++i)
for(int j=1;j<=m;++j)
{
v[++nr]=i*j;
k+=v[nr];
}
if(x<0)
x=-x;
if(x>k)
fprintf(g,"0");
else
{
w[0]=1;
for(int i=1;i<=nr;++i)
{
for(int j=k;j>=0;--j)
{
w1[j]+=w[j+v[i]];
if(j-v[i]>=0)
w1[j]+=w[j-v[i]];
else
w1[j]+=w[-j+v[i]];
}
for(int j=0;j<=k;++j)
{
w[j]+=w1[j];
w[j]%=10000;
w1[j]=0;
}
}
fprintf(g,"%d",w[x]);
}
fclose(f);
fclose(g);
return 0;
}