[英]Find the sum of the max values from all subarrays
問題是 - 從所有子數組中找到所有最大值的總和。 例如,我有數組 {2, 8, 4, 3, 5},解是 92。我所有的子數組在哪里:
{2}、{8}、{4}、{3}、{5}、
{2,8},{8,4},{4,3},{3,5},
{2,8,4},{8,4,3},{4,3,5},
{2,8,4,3},{8,4,3,5},
{2,8,4,3,5}
來自所有子數組的所有最大值是:
2 - 8 - 4 - 3 - 5 -
8 - 8 - 4 - 5 -
8 - 8 - 5 -
8 - 8 -
8
你知道用線性時間復雜度解決這個問題的方法嗎?
它應該非常簡單。 看下面的算法
sum = 0
max = 0
for every array 'arr' in the array of arrays
do
for every element 'arri' in the array 'arr'
do
if arri >= max, max = arri
end for
max = 0
sum = sum + max
end for
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.