Pagini recente » Diferente pentru implica-te/arhiva-educationala intre reviziile 142 si 141 | Cod sursa (job #2193170) | Cod sursa (job #1184989) | Cod sursa (job #2320145) | Cod sursa (job #2002396)
#include <fstream>
#include <cstring>
#define M 10000
#define T 400000
using namespace std;
ifstream fi("diamant.in");
ofstream fo("diamant.out");
int n,m,x, a[100000],b[100000],i,j,k,maxi;
int main()
{
fi>>n>>m>>x;
for(int i=1;i<=n;i++) for(int j=1;j<=m;j++) maxi+=i*j;
if(x > maxi or x < -maxi) {fo<<0; return 0;}
a[0+maxi]=1;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
{
for(k=0;k<=2*maxi;k++) b[k]=(a[k-i*j]+a[k]+a[k+i*j])%M;
memcpy (a,b,sizeof(b));
}
fo<<a[x+maxi];
return 0;
}