在一行上输入一个长度为
,仅由小写字母构成的字符串
,代表待处理的字符串。
在一行上输出一个字符串,代表删除后的答案。保证这个字符串至少包含一个字符。
aabcddd
aaddd
在这个样例中,出现次数最少的字符为
和
,因此需要同时删除这两个字符。
old_str = input().strip() word_map = {} for i, sub in enumerate(old_str): if sub in word_map: word_map[sub]+=1 continue word_map.update({sub:1}) # 按字母出现次数排序 word_list = sorted(list(word_map.items()), key=lambda x: x[1]) # 待删除字母(默认第一个) del_word = [word_list[0][0]] # 添加相同次数字母(从第二个开始遍历) for word in word_list[1:]: if word[1] != word_list[0][1]: # 与第一个出现次数不同 break del_word.append(word[0]) for word in del_word: old_str = old_str.replace(word, '') print(old_str)
#考虑了输入时出现例如aa单一字母组成的字符串的情况 s=list(input()) lis=[] for i in s: lis.append(s.count(i)) lis2=[] for i in range(len(s)): if lis[i]==len(s): lis2=s elif min(lis)==lis[i]: continue else: lis2.append(s[i]) print("".join(lis2))
str1 = input() list1 = list(set(str1)) count_dict = {} for i in list1: count = str1.count(i) count_dict[i] = count need_replace = [] for key, value in count_dict.items(): if value == min(count_dict.values()): need_replace.append(key) for i in need_replace: str1 = str1.replace(i, '') print(str1)
from collections import Counter str_ = input() dict_ = Counter(list(str_.lower())) min_val = min(dict_.values()) print(''.join([key for key in list(str_.lower()) if dict_[key]!=min_val]))
from collections import Counter str_ = input() dict_ = Counter(list(str_.lower())) min_val = min(dict_.values()) print(''.join([key for key in list(str_.lower()) if dict_[key]!=min_val]))
a = input() lis =[] d = a.count(a[0]) for element in a : num = a.count(element) if num < d: lis = [] lis.append(element) d = num elif num == d: lis.append(element) else: continue for i in lis: a = a.replace(i,"") print(a)
""" 1. 计算每个字符出现的次数 2. replace """ s = input() letters = [] # 获取元素范围 sl = list(set(list(s))) # 比较字母出现次数和最小数 for l in sl: if s.count(l) == min([s.count(i) for i in sl]): letters.append(l) # 替换为空 for letter in letters: s = s.replace(letter,'') print(s)