Pagini recente » Cod sursa (job #1323535) | Cod sursa (job #2796425) | Cod sursa (job #230405) | Cod sursa (job #2896370) | Cod sursa (job #2967324)
#include<iostream>
#include<fstream>
using namespace std;
ifstream f("diamant.in");
ofstream g("diamant.out");
int dp[405][88205];
int n,m,x;
void citire()
{
f>>n>>m>>x;
}
void solve()
{
int summax = 0,sum = 0;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
summax = summax + i * j;
int casute = 0;
dp[0][44100] = 1;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
sum = i * j;
summax = summax - sum;
int ma = max(-44100 + summax,x-summax);
int mi = min(44100 - summax, x + summax);
casute++;
for(int k = ma; k<= mi;k++)
{
dp[casute][k + 44100] = dp[casute-1][k + 44100];
dp[casute][k + 44100] += dp[casute-1][k - sum + 44100];
dp[casute][k + 44100] += dp[casute-1][k + sum + 44100];
dp[casute][k + 44100] = dp[casute][k + 44100] % 10000;
}
}
}
g<<dp[n*m][44100 + x];
}
int main()
{
citire();
solve();
}