程序,查找要删除的最小字符数,以便在Python中将A替换为B
假设我们有一个仅由两个字母A和B组成的字符串s,我们必须找到需要从s中删除的最小字母数,以在所有B出现之前获得所有As出现。
因此,如果输入类似于S=“AABAABB”,则输出将为1,因为我们可以删除最后一个A以获取AABBB
为了解决这个问题,我们将按照以下步骤操作:
a_right:=s中“A”的出现次数
b_left:=0
ans:=a_right
对于每个索引i和s中的字符c,执行
b_left:=b_left+1
a_right:=a_right-1
如果c与“A”相同,则
除此以外,
ans:=ans和a_right+b_left的最小值
返回ans
让我们看下面的实现以更好地理解:
示例
class Solution:
def solve(self, s):
a_right = s.count("A")
b_left = 0
ans = a_right
for i, c in enumerate(s):
if c == "A":
a_right -= 1
else:
b_left += 1
ans = min(ans, a_right + b_left)
return ans
ob = Solution()S = "AABAABB"
print(ob.solve(S))输入值
"AABAABB"
输出结果
1
热门推荐
10 儿子立冬祝福语简短独特
11 对当兵的祝福语简短
12 侄儿高考试祝福语简短
13 伴郎红包祝福语朋友简短
14 媳妇生日简短祝福语朋友
15 公司年会祝福语简短最好
16 元旦感恩祝福语简短大全
17 红包祝福语简短10字
18 周六早晨祝福语简短