题目描述
某次科研调查时得到了 n 个自然数,每个数均不超过 1.5 ≤109。已知不相同的数不超过 104个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出统计结果。
输入描述
第 1 行是整数 n,表示自然数的个数。
第 2 ~ n+1行每行一个自然数。
其中,1 <= n <=2×105,每个数均不超过 1.5 <=109
输出描述
输出 m行( m 为 n 个自然数中不相同数的个数),按照自然数从小到大的顺序输出。每行输出两个整数,分别是自然数和该数出现的次数,其间用一个空格隔开。
输入输出样例
示例 1
输入
8
2
4
2
4
5
100
2
100
输出
2 3
4 2
5 1
100 2
运行限制
最大运行时间:1s
最大运行内存: 128M
详细答案
这个答案我在蓝桥杯运行的时候,会超出时间限制。兄弟们,有好的办法及时发给我,一起努力学习。
以下是我的解答代码:
n = int(input('请输入n的值:'))
listwnum = []
listw = []
for w in range(n):
listw.append(int(input()))
listwpaixu = sorted(set(listw))
for z in range(len(listwpaixu)):
listwnum.append(listw.count(listwpaixu[z]))
for y in range(len(listwnum)):
print(listwpaixu[y],listwnum[y])
下一个题见啦!
本文介绍了一个科研调查场景下的自然数统计算法,旨在统计特定范围内自然数的出现频率,并按顺序输出统计结果。文章提供了示例代码及运行限制条件。
1148

被折叠的 条评论
为什么被折叠?



