【发布时间】:2015-02-28 08:44:43
【问题描述】:
给定一个包含 N 个元素的数组 A,我想在 A 的所有可能的连续子序列中找到最小元素的总和。我知道如果 N 很小,我们可以查找所有可能的子序列,但由于 N 最多10^5 找到这个总和的最佳方法是什么?
示例:设 N=3 和 A[1,2,3] 则 ans 为 10 作为可能的连续子序列 {(1),(2),(3),(1,2),(1,2 ,3),(2,3)} 所以最小元素之和 = 1 + 2 + 3 + 1 + 1 + 2 = 10
【问题讨论】:
-
给定集合 A 的数字已排序或没有订单?
-
@L16H7 他们没有这样的命令
-
你能给出 [1,2,2,3,5,5,5,6,6,7] 的预期结果吗?
-
@L16H7 {1}+min{1,2}+min{1,2,2}+min{1,2,2,3}+min{1,2,2, 3,5} 以此类推
-
但是3和5不是连续的,为什么要考虑min{1,2,2,3,5}?
标签: algorithm