Pagini recente » Cod sursa (job #515705) | Cod sursa (job #1403165) | Cod sursa (job #1088305) | Cod sursa (job #1141559) | Cod sursa (job #51660)
Cod sursa(job #51660)
#include <stdio.h>
#include <memory.h>
#define SHIFT 2200000000
#define NMAX (SHIFT*2 + 100)
long a[NMAX], b[NMAX];
#define a (a + SHIFT)
#define b (b + SHIFT)
int n, m;
long x;
void dinamic()
{
long i, j, k;
a[0] = 1;
for(i = 1; i <= n; ++i)
{
for(j = 1; j <= m; ++j)
{
memcpy(b, a, sizeof(a));
for(k = -SHIFT; k <= SHIFT; ++k)
{
if(a[k])
{
++b[k];
++b[k - i*j];
++b[k + i*j];
}
}
for(k = -SHIFT; k <= SHIFT; ++k)
{
a[k] = b[k];
}
}
}
}
int main()
{
freopen("diamant.in", "r", stdin);
freopen("diamant.out", "w", stdout);
scanf("%d %d %ld\n", &n, &m, &x);
dinamic();
printf("%ld\n", a[x]);
fclose(stdin);
fclose(stdout);
return 0;
}