Pagini recente » Cod sursa (job #429219) | Cod sursa (job #650940) | Cod sursa (job #1966234) | Cod sursa (job #831117) | Cod sursa (job #994665)
Cod sursa(job #994665)
#include <iostream>
#include <fstream>
#define smax 55000
#define mod 10000
using namespace std;
int n, m, x, lower, upper;
short cur[2*smax], pre[2*smax];
#define cur (cur+smax)
#define pre (pre+smax)
int main() {
ifstream f("diamant.in");
ofstream g("diamant.out");
f>>n>>m;
f>>x;
if(x > 44100 || x < -44100) {
g<<"0\n";
return 0;
}
lower = -1;
upper = 1;
for(int i=1; i<=n; i++) {
for(int j=1; j<=m; j++) {
lower -= i*j;
upper += i*j;
for(int val=lower; val<=upper; val++)
cur[val] = (pre[val] + pre[val-i*j] + pre[val+i*j])%mod;
cur[i*j] = (cur[i*j] + 1) % mod;
cur[-i*j] = (cur[-i*j] + 1) % mod;
for(int val=lower; val<=upper; val++) pre[val] = cur[val];
}
}
g<<cur[x]%mod<<"\n";
return 0;
}