刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

编程实现:

输入N个正整数且正整数之间以一个逗号隔开,统计N个正整数中出现过的数字,以及每个数字重复出现的次数,将数字按出现次数由高到低进行排列(相同次数不分先后顺序)并输出,输出的数字之间以英文逗号隔开。

例如:输入的正整数为8,8,7,7,7,6,共出现了3个正整数为8、7、6。其中8出现了2次,7出现了3次,6出现了1次,按照次数由高到低排序后,输出的结果为7,8,6。

输入描述:

输入N个正整数且正整数之间以逗号隔开

输出描述:

输出所有出现过的数字,按照出现次数由高到低排序,数字之间以英文逗号隔开     


样例输入:

8,8,7,7,7,6

样例输出:

7,8,6

使用微信搜索喵呜刷题,轻松应对考试!

答案:

br />编程实现可以使用Python语言,具体代码如下:```pythondef count_digits(numbers):# 将输入字符串按逗号分割成列表num_list = numbers.split(',')# 将列表中的字符串转换为整数num_list = [int(num) for num in num_list]# 初始化字典用于统计每个数字出现的次数count_dict = # 遍历列表中的每个数字,统计出现次数for num in num_list:if num in count_dict:count_dict[num] += 1else:count_dict[num] = 1# 将字典中的键值对按照值(出现次数)由高到低排序sorted_dict = sorted(count_dict.items(), key=lambda x: x[1], reverse=True)# 提取排序后的数字列表sorted_nums = [num for num, count in sorted_dict]# 将数字列表转换为字符串,数字之间以英文逗号隔开result = ','.join(map(str, sorted_nums))return result# 测试样例numbers = input("请输入N个正整数,以逗号隔开:")print(count_digits(numbers))```

解析:

【喵呜刷题小喵解析】

本题要求输入N个正整数,统计这些正整数中出现过的数字以及每个数字重复出现的次数,并将数字按照出现次数由高到低进行排序输出。

可以使用Python语言来实现这个功能。首先,将输入字符串按逗号分割成列表,然后将列表中的字符串转换为整数。接着,初始化一个字典用于统计每个数字出现的次数。遍历列表中的每个数字,如果该数字已经在字典中,则将其出现次数加1;否则,将该数字及其出现次数1添加到字典中。

然后,将字典中的键值对按照值(出现次数)由高到低排序,提取排序后的数字列表。最后,将数字列表转换为字符串,数字之间以英文逗号隔开,并输出结果。

在测试样例中,首先通过input函数获取用户输入的N个正整数,然后调用count_digits函数进行统计和排序,最后输出结果。
创作类型:
原创

本文链接:编程实现: 输入N个正整数且正整数之间以一个逗号隔开,统计N个正整数中出现过的数字,以及每个数字重复

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share