Cześć, potrzebuję nakierowania na rozwiązanie tego problemu. Mam kilka zadań do zrobienia do szkoły, z jednym już sobie poradziłem, ale tkwię nad tymi poniżej i nie mogę ruszyć z miejsca. Nie chcę gotowych rozwiązań bo nie w tym rzecz. Brakuje mi czasu i nie mogę nawet poszukać pomocy naukowej więc myślę, że prościej będzie tutaj. Jeśli macie jakieś ciekawe linki lub może sami jesteście w stanie podpowiedzieć jak ugryźć to zadanie to będę wdzięczny.
Funkcja f(i, j) określona jest wzorami:
f(0, 0) = 1
f(i, 0) = 0, f(i, i) = 1 dla i = 1, 2, ...
f(i, j) = i * f(i - 1, j) + j * f(i - 1, j - 1) dla i > 1 oraz 1 =< j =< (i - 1)
Podaj algorytm znajdowania dla danego n oraz k (0 =< k =< n) liczby f(n, k) wykorzystujący metodę programowania dynamicznego.
Myślałem, żeby zrobić to w pętli while, określić w niej warunki podane wyżej i następnie obliczać funkcję dla wczytanego z klawiatury f(n,k), ale jako że dopiero zaczynam przygodę z programowaniem to nie wiem czy to w ogóle dobry pomysł i czy da się to w ten sposób wykonać. Potrzebuję natchnienia, pomysłu, a dalej już polecę sam :) (Uczę się pseudokodów, ale praktykuję trochę w C++ )