Problem Statement:
You are given a binary string s containing only 0s and 1s. Your task is to minimize the length of the longest consecutive substring of the same character by performing at most k operations. In one operation, you can flip a single bit: change a 0 to 1 or a 1 to 0.
Input:
A binary string s (length n), where 1 ≤ n ≤ 10^5.
An integer k (the maximum number of bit flips allowed), where 0 ≤ k ≤ n.
Output:
Return the minimum possible length of the longest consecutive substring of the same character after performing at most k flips.
Sample test case
Input:
s = "00000"
k = 2
Output: 1
I solved it but didnt pass all test cases. I kinda knew my greedy approach using max heap would not work. How to approach this?
Edit: This problem was asked in Bloomberg recently as well