Cod sursa(job #2180671)

Utilizator DimaTCDima Trubca DimaTC Data 21 martie 2018 00:32:16
Problema Diamant Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.48 kb
#include<bits/stdc++.h>
using namespace std;

const int M=10000;
const int d=44100;
int DP[2][90100],n,m,x;
bool u;

int main() {
	ifstream cin("diamant.in"); ofstream cout("diamant.out");
	cin>>n>>m>>x;
	DP[u][d]=1; u=1;
	for (int i=1; i<=n; i++) {
		for (int j=1; j<=m; j++) {
			for (int k=-d; k<=d; k++) {
				DP[u][k+d]=DP[!u][k+d]+DP[!u][k-i*j+d]+DP[!u][k+i*j+d];
				DP[u][k+d]%=M;
			} u=!u;
		}
	}
	if (x>d || x<-d) cout<<0;
	else cout<<DP[!u][x+d];
	return 0;
}