func maxsumofSubarray(arr []int) int { // 负数过滤 L, R := 0, len(arr)-1 for arr[L] <= 0 { L++ } for arr[R] <= 0 { R-- } // 当前累加和数组 sum := make([]int, R-L+1) sum[0] = arr[L] for i := L + 1; i <= R; i++ { sum[i-L] = arr[i] + sum[i-L-1] } max := sum[len(sum)-1] tmp := max // 两侧压缩 贪心 for L != R { ...