嵌套列表黑客等级测试用例python

问题描述

以下是我针对hackerrank嵌套列表问题的代码,用于打印学生倒数第二个分数的名称。我正在开始探索python的旅程。这段代码在下面列出的两个测试用例中失败了……有人可以帮我吗?

  1. 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>