问题分析 该问题的核心在于计算所有子串的“权值”之和。给定一个 串,权值的定义是将其转换为“相邻字符均不相等”的字符串所需的最小翻转次数。 1. 目标状态分析 对于任意长度为 的字符串,满足“相邻字符都不相等”的目标状态仅有两种: 模式 A:010101...(以 '0' 开头) 模式 B:101010...(以 '1' 开头) 模式 A 与 模式 B 是完全互补的。这意味着,如果一个子串转化为模式 A 需要 次翻转,那么转化为模式 B 就需要 次翻转。 2. 权值定义推导 对于一个给定的子串 ,其长度 。 设将其变为模式 A 所需翻转次数为 ,则其权值 为: 增量扫描与对比预...