Pagini recente » Cod sursa (job #2922013) | Cod sursa (job #2661803) | Cod sursa (job #905483) | Cod sursa (job #3239427) | Cod sursa (job #2966165)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("diamant.in");
ofstream fout("diamant.out");
const int NMAX = 405, MOD = 1e4;
int n, m, x;
int calc[NMAX];
inline void solve()
{
int itr = 1, sum = 0;
for(int i = 1; i <= n; ++i)
{
for(int j = 1; j <= m; ++ j)
{
sum += i * j;
calc[itr++] = i * j;
}
}
itr--;
if(sum < x)
{
fout << 0;
return;
}
sort(calc + 1, calc + itr + 1);
int dp[itr+5][sum+5];
memset(dp, 0, sizeof(dp));
dp[0][0] = 1;
for(int i = 1; i <= itr; ++ i)
{
dp[i][0] = 1;
for(int j = sum; j >= 1; -- j)
{
dp[i][j] = (dp[i-1][j]%MOD + dp[i-1][abs(calc[i] - j)]%MOD)%MOD;
}
}
fout << dp[itr][x];
}
int main()
{
ios::sync_with_stdio(false);
fin.tie(NULL);
fout.tie(NULL);
fin >> n >> m >> x;
solve();
}