2025-03-10:将 1 移动到末尾的最大操作次数。用go语言,给定一个二进制字符串 s,你可以进行以下操作:选择字符串中任意一个下标 i(满足 i + 1 < s.length 的条件),并且 s[i] 为 '1' 且 s[i + 1] 为 '0'。然后把 s[i] 向右移动,直到它到达字符串末尾或遇到另一个 '1'。例如,对于 s = "010010",如果选择 i = 1,操作后得到的字符串将变为 "000110"。你的任务是计算可以进行的最大操作次数。
1 <= s.length <= 100000。
s[i] 为 '0' 或 '1'。
输入: s = "1001101"。
输出: 4。
解释:
可以执行以下操作:
选择下标 i = 0。结果字符串为 s = "0011101",下标0到2。
选择下标 i = 4。结果字符串为 s = "0011011",下标4到5。
选择下标 i = 3。结果字符串为 s = "0010111",下标3到4。
选择下标 i = 2。结果字符串为 s = "0001111",下标2到3。
相似问题