Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在阅读这本教科书,试图解决一些算法以提高我的技能,但我目前陷入了这个问题:
这一章是关于动态规划的,我真的很难开始这个问题,因为我不知道如何处理这些类型的问题。任何人都可以帮我解决它或指出我现有的类似算法吗?
这个问题的解决方案是以下递归公式的解决方案:
f(i) = max{ l_i + f(i+k_i) , f(i+1) } f(x) = 0 : for all x > n
问题的解决方案是 的解决方案f(1)。
f(1)
说明:对于每一天,您可以“跳过”这一天,然后检查第二天(或之后的一天,...,这是通过调用来完成的f(i+1))-或者吃棒棒糖,然后您可以选择来仅在k_i几天后返回 - 意味着您添加了f(i+k_i).
f(i+1)
k_i
f(i+k_i)