给定一整数序列 a1, a2, …, an,求 a1~an 的一个子序列 ai~aj,使得从 ai 到 aj 的和最大。
只需要求出最大子序列的和,而不需要求出最大的那个序列。
给定一整数序列 a1, a2, …, an,求 a1~an 的一个子序列 ai~aj,使得从 ai 到 aj 的和最大。
只需要求出最大子序列的和,而不需要求出最大的那个序列。
样例输入-2 11 -4 13 -5 -2 | 样例输出20 |
应用穷举法可以得到 O(n3) 的算法,优化它即可得到 O(n2) 的算法。
利用分治的思想可以有 O(n*logn) 的算法。
也有聪明的算法,它的复杂度是 O(n) 的。
本题作为帮助大家熟悉OJ系统的题目,你不需要过分考虑时间和空间上的开销,使用 O(n2)的算法就足够通过测试用例。
另请注意:输入多少个数是未知的。请思考如何处理。