74 計算所有奇數子陣列的和 C語言

2021-10-11 16:32:25 字數 962 閱讀 7653

給你乙個正整數陣列 arr ,請你計算所有可能的奇數長度子陣列的和。

子陣列 定義為原陣列中的乙個連續子串行。

請你返回 arr 中 所有奇數長度子陣列的和 。

示例 1:

輸入:arr = [1,4,2,5,3]

輸出:58

解釋:所有奇數長度子陣列和它們的和為:

[1] = 1

[4] = 4

[2] = 2

[5] = 5

[3] = 3

[1,4,2] = 7

[4,2,5] = 11

[2,5,3] = 10

[1,4,2,5,3] = 15

我們將所有值求和得到 1 + 4 + 2 + 5 + 3 + 7 + 11 + 10 + 15 = 58

示例 2:

輸入:arr = [1,2]

輸出:3

解釋:總共只有 2 個長度為奇數的子陣列,[1] 和 [2]。它們的和為 3 。

示例 3:

輸入:arr = [10,11,12]

輸出:66

#include

intsumarr

(int

* arr,

int len)}}

return res;

//返回最後累加後的值

}int

main()

;printf

("%d\n"

,sumarr

(arr,

sizeof

(arr)

/sizeof

(arr[0]

)));

return0;

}

執行截圖如下

此方法時間複雜度較大。

關於計算所有連續子串行的最大和

以下是在關於計算所有連續子串行的最大和問題中最暴力的方法 def lagerset sum arr res arr 0 sum res for i in range 1,len arr if sum 0 sum sum arr i else sum arr i if sum res res sum ...

1588 所有奇數長度子陣列的和

題目描述 給你乙個正整數陣列 arr 請你計算所有可能的奇數長度子陣列的和。子陣列 定義為原陣列中的乙個連續子串行。請你返回 arr 中 所有奇數長度子陣列的和 示例 1 輸入 arr 1,4,2,5,3 輸出 58 解釋 所有奇數長度子陣列和它們的和為 1 1 4 4 2 2 5 5 3 3 1,...

1588 所有奇數長度子陣列的和

給你乙個正整數陣列 arr 請你計算所有可能的奇數長度子陣列的和。子陣列 定義為原陣列中的乙個連續子串行。請你返回 arr 中 所有奇數長度子陣列的和 示例 1 輸入 arr 1,4,2,5,3 輸出 58 解釋 所有奇數長度子陣列和它們的和為 1 1 4 4 2 2 5 5 3 3 1,4,2 7...