给你一个仅由字符 'a' 和 'b' 组成的字符串 s。
你可以反复移除 任意子字符串 ,只要该子字符串中 'a' 和 'b' 的数量相等。每次移除后,剩余部分的字符串将无缝拼接在一起。
返回一个整数,表示经过任意次数的操作后,字符串可能的 最小长度 。
子字符串 是字符串中一个连续、非空的字符序列。
示例 1:
输入: s = "aabbab"
输出: 0
解释:
子字符串 "aabbab" 中有三个 'a' 和三个 'b'。由于它们的数量相等,可以直接移除整个字符串,最小长度为 0。
示例 2:
输入: s = "aaaa"
输出: 4
解释:
字符串 "aaaa" 中每个子字符串都仅包含 'a',无法移除任何部分,因此最小长度仍为 4。
示例 3:
输入: s = "aaabb"
输出: 1
解释:
首先移除子字符串 "ab",剩下 "aab"。然后再移除新的子字符串 "ab",剩下 "a"。无法再移除任何部分,因此最小长度为 1。
提示:
1 <= s.length <= 105s[i] 是 'a' 或 'b'。