1588. 所有奇数长度子数组的和
分析
枚举起点 i 和终点 j,累积和
- 双重循环遍历
arr,枚举所有可能的子数组起点i和终点j - 维护
sum变量,计算arr[i] ~ arr[j]的子数组和:- 每次
j递增,就加上arr[j] - 如果
j - i + 1是奇数,说明当前sum是一个奇数长度子数组和,就将当前sum累加到res里
- 每次
时间复杂度
时间复杂度 O(n^2)
空间复杂度
空间复杂度为 O(1)
C++代码
|
|
枚举起点 i 和终点 j,累积和
arr,枚举所有可能的子数组起点 i 和终点 jsum 变量,计算 arr[i] ~ arr[j] 的子数组和:
j 递增,就加上 arr[j]j - i + 1 是奇数,说明当前 sum 是一个奇数长度子数组和,就将当前 sum 累加到 res 里时间复杂度 O(n^2)
空间复杂度为 O(1)
|
|