Letöltés: mb_szam.c #include <stdio.h> // mert kell #include <stdlib.h> // mert ez is kell int *cache, k; int bont(int n) { int sum = 0, i, x; if (n <= 1) return 1; x = (n > k) ? k : n; for (i = 1; i <= x; i++) { if (!cache[n - i]) cache[n - i] = bont(n - i); sum += cache[n - i]; } return sum; } int main(int argc, char **argv) { int n; if (argc != 3) { fprintf(stderr, "Usage: %s n k\n", argv[0]); return 1; } n = atoi(argv[1]); k = atoi(argv[2]); if (!n || !k) { fprintf(stderr, "Torekedjunk a helyes parameterekre\n"); return 2; } cache = calloc(n, sizeof(int)); if (!cache) { perror("malloc"); return 4; } printf("%d\n", bont(n)); return 0; } |