Pagini recente » Cod sursa (job #183322) | Cod sursa (job #3142663) | Cod sursa (job #39280) | Cod sursa (job #2481313) | Cod sursa (job #420507)
Cod sursa(job #420507)
#include <iostream>
using namespace std;
#define MOD 10000
int N, M, X;
int A[2*45001], B[2*45001];
int main() {
FILE *f1=fopen("diamant.in", "r"), *f2=fopen("diamant.out", "w");
int i, j, p, q, Smax=0;
fscanf(f1, "%d%d%d", &N, &M, &X);
for(i=1; i<=N; i++) {
for(j=1; j<=M; j++) {
Smax+=i*j;
}
}
if(X>Smax || X<-Smax) {
fprintf(f2, "0\n");
}
else {
B[Smax]=1;
for(i=1; i<=N; i++) {
for(j=1; j<=M; j++) {
for(p=-Smax; p<=Smax; p++) {
A[Smax+p]=(B[Smax+i*j+p]+B[Smax+p]+B[Smax-i*j+p])%MOD;
}
for(p=-Smax; p<=Smax; p++) {
B[Smax+p]=A[Smax+p];
}
}
}
fprintf(f2, "%d\n", B[Smax+X]);
}
fclose(f1); fclose(f2);
return 0;
}