def min_operations(s): n = len(s) operations = 0 s_list = list(s) while True: bad_substrings = [] for i in range(n): for j in range(i+1, n): zeros = 0 ones = 0 for k in range(i, j+1): if s_list[k] == '0': zeros += 1 else: ones += 1 if zeros >= ones: bad_substrings.append((i, j)) if not bad_substrings: return operations zero_frequency = {} for i in range(n): if s_list[i] == '0': count = sum(1 for start, end in bad_substrings if start <= i <= end) zero_frequency[i] = count if not zero_frequency: return -1 best_pos = max(zero_frequency.items(), key=lambda x: x[1])[0] s_list[best_pos] = '1' operations += 1 return operations