问题描述
以下是我针对hackerrank嵌套列表问题的代码,用于打印学生倒数第二个分数的名称。我正在开始探索python的旅程。这段代码在下面列出的两个测试用例中失败了……有人可以帮我吗?
- 4 索纳 -25.001 莫娜 -25.0001 微型 -25.000 丽塔 -25.0
2.4 沙达卜 8 瓦伦 8.9 萨尔维什 9.5 苛刻 10
n=int(input())
l=[]
for i in range(n*2) :
ele=input()
l.append(ele)
l2=[]
for i in range(1,n*2,2) :
l2.append(l[i])
l2.sort()
a=min(l2)
for i in range(n) :
for i in l2 :
if i == a :
l2.remove(i)
b=min(l2)
l3=[]
for i in range(n*2) :
if l[i] == b :
l3.append((l[i-1]))
l3.sort()
for i in range(len(l3)) :
print(l3[i])
解决方法
它为我工作。您可以根据需要分配inf而不是1000。
if __name__ == '__main__':
d_list=[]
low=[1000,1000]
for _ in range(int(input())):
name = input()
val = float(input())
if val < low[0]:
low[1]=low[0]
low[0]=val
elif val < low[1] and val >low[0]:
low[1]=val
if val<=low[1]:
d_list.append([name,val])
for student in sorted(d_list):
if student[1]==low[1]:
print(student[0])
,
<div id="input-container">
<input value="hello">
</input>
</div>