Pagini recente » Cod sursa (job #1859530) | Cod sursa (job #1259) | Cod sursa (job #2956616) | Cod sursa (job #44049) | Cod sursa (job #718039)
Cod sursa(job #718039)
#include <cstdio>
#define lmax 44600
using namespace std;
int inceput;
int sfarsit;
int n;
int m;
int calitate;
int a[lmax * 2];
int b[lmax * 2];
#define a (a+lmax)
#define b (b+lmax)
void citire()
{
scanf ("%d %d %d", &n, &m, &calitate);
for (int i = 1; i <= n; ++ i){
for (int j = 1; j <= m; ++ j){
sfarsit += i * j;
}
}
inceput = sfarsit * (- 1);
}
void rez()
{
b[0] = 1;
for (int i = 1; i <= n; ++ i){
for (int j = 1; j <= m; ++ j){
for (int k = inceput; k <= sfarsit; ++ k){
a[k] = b[k] + b[k - i * j] + b[k + i * j];
}
for (int k = inceput; k <= sfarsit; ++ k){
b[k] = a[k];
}
}
}
printf ("%d", a[calitate]);
}
int main()
{
freopen ("diamant.in", "r", stdin);
freopen ("diamant.out", "w", stdout);
citire();
rez();
return 0;
}