You are given n dice each having f faces. You have to find the number of ways in which a sum of S can be achieved. This is the dice throw problem. Which of the following methods can be used to solve the dice throw problem?
(a) Brute force
(b) Recursion
(c) Dynamic programming
(d) Brute force, Recursion and Dynamic Programming