检查所有字符的频率是否可以通过在Python中删除一次而变得相同
假设我们有一个小写的字符串s。删除一个字符后,我们必须检查所有字符的频率是否相同。
因此,如果输入类似于s=“abbc”,则输出将为True,因为我们可以删除一个b以获得字符串“abc”,其中每个元素的频率为1。
示例
让我们看下面的实现以更好地理解-
from collections import defaultdict
def allSame(occurrence):
counts = list(occurrence.values())
return all(element == counts[0] for element in counts)
def solve(s):
occurrence = defaultdict(int)
for char in s:
occurrence[char] += 1
if allSame(occurrence):
return True
for char in s:
occurrence[char] -= 1
if allSame(occurrence):
return True
occurrence[char] += 1
return False
s = "abbc"
print(solve(s))输入值
"abbc"输出结果
True
热门推荐
7 简短的二胎祝福语
10 简短霸气女儿生日 祝福语
11 祝福语高考小众诗句简短
12 元旦祝福语20秒简短
13 老师过年祝福语大全 简短
14 一生祝福语简短
15 产检祝福语简短霸气
16 朋友店开张祝福语简短
17 生日爱情祝福语大全简短
18 朋友女儿生日祝福语 简短