Pagini recente » Cod sursa (job #2289588) | Cod sursa (job #2634427) | Cod sursa (job #1732809) | Cod sursa (job #2048657) | Cod sursa (job #61915)
Cod sursa(job #61915)
#include <cstdio>
#include <string>
using namespace std;
#define MOD 10000
#define a(i,j) a[i][j+lim]
#define Nmax 100100
short a[2][Nmax];
int main()
{
freopen("diamant.in","r",stdin);
freopen("diamant.out","w",stdout);
int i,j,k,n,m,s,p1=0,p2=1, lim = 0;
scanf("%d%d%d",&n,&m,&s);
for(i=1;i<=n;++i)
for(j=1;j<=m;++j)
lim += i*j;
if((s>0 && s > lim)||(s<0 && s < -lim))
{
printf("0\n");
return 0;
}
a(p1,0) = 1;
for(i=1;i<=n;++i)
for(j=1;j<=m;++j)
{
memset(a[p2],0,sizeof(a[p2]));
for(k=-lim;k<=lim;++k)
a(p2,k) = (a(p1,k+i*j) + a(p1,k) + a(p1,k-i*j)) % MOD;
swap(p1,p2);
}
printf("%d\n",a(p1,s));
return 0;
}