POJ 2593 Max Sequence 解题报告
题意:
有一个数字序列,求以某个数为中点,其左边的最大连续子序列和加其右边的最大连续子序列和的最大值,即:
思路:
很容易想到那熟悉的最大连续子序列和,这道题其实就是对于每个序列中的数,分别求其左右两边序列的最大连续子序列和。
很清晰的,求最大连续子序列和的O(n)的算法是,从左往右扫描,如果前面的和小于0,说明前面的是负影响,从当前值重新开始记,如果前面的和大于等于0,说明是正影响,继续加。