“子段和”的总结

  • 最大子段和,用动态规划
  • 数组全正数(意味着presum[]数组递增),可以用滑动窗口
  • 数组有负数(意味着presum[]数组无序),用presum解法
    • 子段和>=K<=K、在范围[lower,upper],都能用presum解法

另:使用presum数组时,k长子段=presum[i]-presum[i-k]一定是半开半闭

  • 如果设presum[i]=[0..i)(这时i也是区间长度),后开,k长子段也是后开(前闭)
  • 如果设presum[i]=[0..i](这时空区间要单独对待),后闭,k长子段也是后闭(前开)