代码改了好久,不知道怎么去降低循环次数了。也尽量使用内置函数了,但依旧超时。感觉要尝试用空间换时间的方式,暂时先留个标记
初版代码:
n = int(input())
lst = []
for i in range(n) :
lst.append(int(input()))
lst_rec = list(set(lst))
lst_rec.sort()
for data in lst_rec :
print('{} {}'.format(data, lst.count(data)))
时间超限55
改用字典:
n = int(input())
dic = {}
for i in range(n) :
var = int(input())
dic[var] = dic.get(var, 0) + 1
lst_rec = list(dic.items())
lst_rec.sort(key=lambda x : int(x[0]))
for i in range(len(lst_rec)) :
print('{} {}'.format(lst_rec[i][0], lst_rec[i][1]))
时间超限82
字典简版:
n = int(input())
d = {}
for i in range(n):
p = int(input())
d[p] = d.get(p, 0) + 1
for x, y in sorted(d.items()):
print(f'{x} {y}')
时间超限82
0.0分
0 人评分
Pascal三角 (C语言代码)浏览:1252 |
WU-C语言程序设计教程(第三版)课后习题11.11 (C++代码)(想学链表的可以看看)浏览:1470 |
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:649 |
C语言程序设计教程(第三版)课后习题7.2 (C语言代码)浏览:572 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:468 |
1014题解浏览:524 |
川哥的吩咐 (C语言代码)浏览:664 |
C语言程序设计教程(第三版)课后习题7.3 (C语言代码)浏览:569 |
简单的a+b (C语言代码)浏览:531 |
1169题解浏览:575 |