Pagini recente » Cod sursa (job #1146203) | Istoria paginii runda/concurs_11_12_02_23 | Cod sursa (job #2127851) | Cod sursa (job #1994602) | Cod sursa (job #2150950)
#include <fstream>
#include <cstring>
#define DIM 401*401
#define MOD 10000
using namespace std;
ifstream fin ("diamant.in");
ofstream fout ("diamant.out");
int n,m,x,mini,maxi,i,j,k,nr;
int v[2*DIM],w[2*DIM];
//int *D[2] = v + DIM-2;
//int *E[2] = w + DIM-2;
int main (){
/// D-0, E-1
fin>>n>>m>>x;
//D[0][0] = 1;
mini = maxi = 0;
//t = 1;
v[DIM] = w[DIM] = 1;
for (i=1;i<=n;i++)
for (j=1;j<=m;j++){
nr = i*j;
maxi += nr;
for (k=DIM-maxi;k<=DIM+maxi;k++){
if (k + nr < 2*DIM)
w[k] = (v[k+nr] + w[k]) % MOD;
if (k - nr >= 0)
w[k] = (v[k-nr] + w[k]) % MOD;
}
memcpy (v,w,sizeof(w));
}
if (x >= -maxi && x <= maxi)
fout<<v[x + DIM];
else
fout<<0;
return 0;
}