题目描述
给定有n个整数(可能为负整数)组成的序列a1,a2,...,an,求该序列连续的子段和的最大值。如果该序列的所有元素都是负整数时定义其最大子段和为0。
例如,当(a1,a2,a3,a4,a5)=(-5,11,-4,13,-4-2)时,最大子段和为11+(-4)+13=20。
输入
输入数据有多组测试数据。每组测试数据有两行:第一行整数个数N,第二行为N个整数,每个整数之间用一空格隔开。
输出
每个用例,用一行输出最大连续子段和。
样例输入 复制
6
-2 11 -4 13 -5 -2
样例输出 复制
20
我每次交了都错,但思路又没问题,竟然错在了多组输入。擦擦擦。
我用的是最简单的一种方法,暴力枚举,时间复杂度为O(N3),其实还有好几种方法,如果有需要,可以看别人的,谢谢了。
代码实现