题解 | #RY机试之一#

实现删除字符串中出现次数最少的单词,若多个单词出现次数一样,则都删除。输出删除这些单词后的字符串,字符串中其它字符保持原来的顺序。(模糊记忆,不喜勿喷,谢谢!只记得具体的输入输出)
输入描述:

字符串的输入是一段英文单词字符串,不考虑非法输入,输入的字符串长度小于等于20个字节

输出描述:

删除字符串中出现次数最少的字符后的字符串

示例1
输入

This is a surface a

输出

a a

示例2
输入

is is a

输出

is is

ACM实现
编程语言:python3
实现方法:char --> list and dict,利用字典统计元素出现的个数,利用list返回结果

import sys
from collections import Counter
def find(str):
    nums = []
    for i in str:
        nums.append(i)
    # print(nums)
    dict1 = Counter(str)
    # print(dict1)
    list1 = Counter.most_common(dict1)
    min_val = list1[-1][-1]
    # print(min_val)
    if len(dict1)>1:
        for key, val in dict1.items():
            if val == min_val:
                for i in nums:
                    if key == i:
                        nums.remove(key)
    else:
        nums = []

    # print(nums)
    for i in nums:
        print(i, end=" ")

if __name__ == "__main__":
    str = [i for i in input().split(" ")]
    # print(str)
    find(str)
全部评论
欢迎各位大佬指正小白
点赞 回复 分享
发布于 2021-09-05 13:07

相关推荐

11-08 17:36
诺瓦科技_HR
点赞 评论 收藏
分享
Java抽象带篮子:难蚌,点进图片上面就是我的大头😆
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务