有一组n天鲍勃计划工作,并在每个i
天有一个使命;每个任务持续正好一天,必须在它给出的日期i
完成,并支付鲍勃x_i
美元。鲍勃一次不能连续执行超过5次任务。也就是说,他必须每5天至少休息一天。
Given
号码x_1...x_n
,在哪些日子里鲍勃应该执行任务,并在哪些日子里休息一下,以便尽可能赚到更多的钱并且不超过5天?您的解决方案应该是O(n)
我的问题:
我有想出复发这个问题烦恼。我一直在思考这个问题很长时间。我原先的想法是让p[i] = max{x_i + x_i-1 + .... + x_i-4}, where p[i] is the max profit earnable from days i-4 to i.
但是,我意识到,其中一个,这确实考虑到最佳解决方案可能有两个连续的工作日,两个,我没有构建以前的解决方案。
我的问题:任何人都可以给我洞察力,了解这个问题的结构吗?我觉得我只是不理解将使解决方案易于看到的关键属性。
在此先感谢!