给定n个整数,请统计出每个整数出现的次数,按出现次数从多到少的顺序输出。 输入 输入的第一行包含一个整数n,表示给定数字的个数。 第二行包含n个整数,相邻的整数之间用一个空格分隔,表示所给定的整数。 输出 输出多行,每行包含两个整数,分别表示一个给定的整数和它出现的次数。按出现次数递减的顺序输出。如果两个整数出现的次数一样多,则先输出值较小的,然后输出值较大的。
时间: 2024-03-22 13:37:52 浏览: 99
这是一个简单的统计问题,可以通过使用字典来实现。
以下是 Python 代码实现:
```python
n = int(input())
nums = list(map(int, input().split()))
# 统计每个数字出现的次数
count_dict = {}
for num in nums:
if num in count_dict:
count_dict[num] += 1
else:
count_dict[num] = 1
# 按照出现次数从多到少排序
sorted_dict = sorted(count_dict.items(), key=lambda x: (-x[1], x[0]))
# 输出结果
for item in sorted_dict:
print(item[0], item[1])
```
输入样例:
```
10
2 8 2 7 3 4 2 3 2 4
```
输出样例:
```
2 4
3 2
4 2
7 1
8 1
```
阅读全文