Given a dictionary of words d and a string s, design a dynamic programming algorithm to determine if the string s can be partitioned into a sequence of words from d. What are the subproblems?
a) Subproblems involve determining the length of the string s.
b) Subproblems involve checking if each substring of s is a valid word in the dictionary d.
c) Subproblems involve calculating the number of partitions needed to form the string s.
d) Subproblems involve identifying the characters in s that do not belong to any word in d.