""" 气球数量 给定一个字符串s,需要使用s中的字母, 来拼凑尽可能多的单词'balloon'(气球) 字符串s中的每个字母最多只能被使用一次, 最多可以拼凑出多少个单词'balloon' """ from collections import Counter def max_balloons(s): """ 计算给定字符串中可以组成单词 "balloon" 的最大数量。 参数: s (str): 输入的字符串。 返回: int: 可以组成 "balloon" 的最大数量,如果不能组成则返回 0。 """ # 筛选出字符串中包含 "balloon" 中字母的字符 arr = [char for char in s if char in "balloon"] # 统计每个字母出现的次数 ht = Counter(arr) # 由于 "l" 和 "o" 在 "balloon" 中各出现两次,因此需要将它们的计数除以 2 ht['l'] //= 2 ht['o'] //= 2 # 如果所有字母都出现,则返回最小的字母数量;否则返回 0,表示不能组成 "balloon" return min(ht.values()) if len(ht) == 5 else 0 print(max_balloons("nlaebolko"))
评论前必须登录!
注册