小红有一个长度为N且只由字符0、1组成的字符串S,下标从1开始。
她每次可以对一个字符执行翻转操作,即0变1或者把1变成0。
给定一个仅包含 '0'
和 '1'
的字符串 S
,我们需要计算所有子区间的权值之和。定义每个子区间的权值为将该子区间内的所有数字变为 '0'
或 '1'
所需要的最少翻转次数。对于一个子区间,记 '0'
的个数为 c0
,'1'
的个数为 c1
,则最少翻转次数为:
min(c0,c1)=2c0+c1−∣c0−c1∣
即:
2区间长度−∣c0−c1∣