【发布时间】:2021-08-04 13:51:45
【问题描述】:
给你一个字符串。您的任务是确定字符串中某个字符出现的次数是否等于字符串中其他字符出现次数的总和。
输入: 输入的第一行包含一个整数 T,表示测试用例的数量。接下来的 T 行中的每一行都包含一个由小写拉丁字母组成的字符串 S。
输出: 对于每个测试用例,如果字符串满足上述条件,则输出包含“YES”的单行,否则输出“NO”。
约束 1≤T≤1000 1≤S的长度≤50 子任务 子任务#1[28 分]:S 包含不超过 2 个不同的字母。 子任务#2[72分]:无附加条件
示例 输入: 4 出租车
zqzqq
abc
kklkwwww
输出: 是的
是的
没有
是的
我的代码:
for i in range(int(input())):
s = input()
d = {}
st = set(s)
sm = 0
for char in st:
d[char] = s.count(char)
for value in d.values():
sm += value
if sm % 2 == 0:
print('YES')
else:
print('NO')
由于我的算法通过了给定的测试用例,但我仍然得到错误的答案。谁能告诉我为什么?
【问题讨论】:
-
您可以使用 count、len 并为每个字符串创建一个列表,其中每个索引都是一个字母,从而大大简化此操作
标签: python-3.x string