数组中01,可以将数组的一段翻转(0 变 1, 1 变 0),求翻转后数组最多1的个数

这道题的关键思想:

  • 翻转 0 变 1 ,相当于让 1 的个数 +1
  • 翻转 1 变 0 ,相当与让 1 的个数 -1

解题思路:
根据原来的数组 a[] 构造一个新的数组 b[]

  • a[i] = 0b[i] = 1
  • a[i] = 1b[i] = -1

b[] 求最长子段和,包含最长子段和的区间就是进行01翻转的区间。
代码略