Question。这是一个简单的问题,但我不知道这段代码有什么问题?
from collections import Counter
def com(N,A):
num_array=A.split()
c=Counter(num_array)
C=max(c.values())
l1=[]
for k in c:
if c[k]==C:
l1.append(k)
V1=min(l1)
V=int(V1)
print V,C
t=input()
for i in range(t):
N=input()
A=raw_input()
com(N,A)
如果可能的话,任何更简单的解决方案都会很棒
答案 0 :(得分:1)
您需要在获取分钟之前将l1
中的值转换为整数。否则你正在接受最小的字符串。
答案 1 :(得分:1)
这将帮助您入门:
from collections import Counter
li='''2
5
1 2 3 2 5
6
1 2 2 1 1 2'''.splitlines()
c=Counter()
for e in [s.split(' ') for s in li]:
c.update(e)
print c.most_common(2)
打印:
[('2', 6), ('1', 4)]