Mid/SeniorString
Minimum Number of Changes to Make Binary String Beautiful
You are given a 0-indexed binary string s having an even length.
A string is beautiful if it is possible to partition it into one or more substrings such that:
- Each substring has an even length.
- Each substring contains only
1's or only0's.
You can change any character in s to 0 or 1.
Return the minimum number of changes required to make the string s beautiful.
Example 1
Input
s = "1001"Output
2Changing
s[1] to 1 and s[3] to 0 gives 1100, which can be partitioned as 11|00, and 2 is the minimum number of changes needed.Example 2
Input
s = "10"Output
1Changing
s[1] to 1 gives 11, which can be partitioned as 11, and 1 is the minimum number of changes needed.Constraints
- 2 <= s.length <= 10^5
- s has an even length.
- s[i] is either '0' or '1'.