3399. Smallest Substring With Identical Characters II
3399. Smallest Substring With Identical Characters II
Description
You are given a binary string s of length n and an integer numOps.
You are allowed to perform the following operation on s at most numOps times:
- Select any index
i(where0 <= i < n) and flips[i]. Ifs[i] == '1', changes[i]to'0'and vice versa.
You need to minimize the length of the longest substring of s such that all the characters in the substring are identical .
Return the minimum length after the operations.
Example 1:
1 | Input: s = "000001", numOps = 1 |
Explanation:
By changing s[2] to '1', s becomes "001001". The longest substrings with identical characters are s[0..1] and s[3..4].
Example 2:
1 | Input: s = "0000", numOps = 2 |
Explanation:
By changing s[0] and s[2] to '1', s becomes "1010".
Example 3:
1 | Input: s = "0101", numOps = 0 |
Constraints:
1 <= n == s.length <= 10^5sconsists only of'0'and'1'.0 <= numOps <= n
Hints/Notes
- 2025/01/11
- binary search
- 0x3Fâs solution(checked)
- Weekly Contest 429 t4
Solution
Language: C++
1 | class Solution { |