Pagini recente » Cod sursa (job #1050236) | Cod sursa (job #2868035) | Cod sursa (job #744203) | Cod sursa (job #1838329) | Cod sursa (job #51857)
Cod sursa(job #51857)
#include<stdio.h>
#include<string.h>
#define modul( x ) ( x < 0 ? -x : x )
#define mod 10000
#define Nmax 88201
int a[Nmax],b[Nmax],*c1,*c2;
int main()
{
int n,m,i,j,l,k;
long S;
freopen("diamant.in","r",stdin);
freopen("diamant.out","w",stdout);
scanf("%d%d%ld",&n,&m,&S);
if( modul(S) > (Nmax>>1) ) { printf("0\n"); return 0; }
c1=a+(Nmax>>1);
c2=b+(Nmax>>1);
c1[0]=1;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
{
l=m*(m+1)*(i-1)*i/4+i*(j-1)*j/2;
for( k=-l;k<=l;k++)
if( c1[k] )
{
c2[k+i*j]+=c1[k];
c2[k-i*j]+=c1[k];
c2[k]+=c1[k];
c2[k+i*j]%=mod;
c2[k-i*j]%=mod;
c2[k]%=mod;
}
memcpy(a,b,sizeof(b));
memset(b,0,sizeof(b));
}
printf("%d\n",c1[S]);
return 0;
}