In an array A containing only 0s and 1s, a K-bit flip consists of choosing a (contiguous) subarray of length K and simultaneously changing every 0 in the subarray to 1, and every 1 in the subarray to 0.
Return the minimum number of K-bit flips required so that there is no 0 in the array. If it is not possible, return -1.
Note: 1 <= A.length <= 30000 1 <= K <= A.length
class Solution: def minKBitFlips(self, A: List[int], K: int) -> int: