小红操作01串至空的最少删除次数探究
可以使用贪心算法来解决这个问题。
首先,我们可以遍历整个字符串,记录下连续相同字符的长度。例如,对于字符串"0011100111",我们可以记录下长度为2的连续0子串和长度为3的连续1子串。
然后,我们可以计算出需要删除的最小次数。对于每个连续子串,我们只需要删除其中的一个字符,即可使得该子串变为空串。因此,最小删除次数就等于所有连续子串的个数。
最后,输出最小删除次数即可。
以下是一个示例代码:
```python
def minDeletion(s):
count = 0
i = 0
while i < len(s):
j = i + 1
while j < len(s) and s[j] == s[i]:
j += 1
count += 1
i = j
return count
s = input()
print(minDeletion(s))
```
示例输入:
```
0011100111
```
示例输出:
```
4
```
解释:需要删除的最小次数为4,可以删除两个0和两个1,使得字符串变为空串。
创作工场
免责声明:
以上内容除特别注明外均来源于网友提问,创作工场回答,未经许可,严谨转载。
点击这里>>使用🔥专业版,更聪明、更完整、更原创!