【发布时间】:2015-03-24 15:36:58
【问题描述】:
给定一个带有 +ve 和 -ve integer 的数组,找出最大和,这样你就不能跳过 2 个连续的元素(即你必须至少选择其中一个才能向前移动)。
例如:-
10 , 20 , 30, -10 , -50 , 40 , -50, -1, -3
输出:10+20+30-10+40-1 = 89
【问题讨论】:
-
我花了很多时间尝试做@IVIad Idea,没有成功,但解决这个问题的最好方法是列出所有有效列表(不要跳过多个&&不要停止在 n-1 个元素之前),然后将相应的值相加并得到最大值。我即将实现它,只是时间问题。
-
你得到答案的输出了吗?您是否运行了所有测试用例?你能试试这个 2,-1,-10,-50,-1 吗?
标签: algorithm logic kadanes-algorithm