为了账号安全,请及时绑定邮箱和手机立即绑定

嵌套列表黑客排名测试用例python

嵌套列表黑客排名测试用例python

largeQ 2023-06-13 16:31:11
以下是我的 hackerrank 嵌套列表问题代码,用于打印学生倒数第二名的姓名。我开始了我的 Python 探索之旅。这段代码在下面列出的两个测试用例中失败了……任何人都可以帮我解决这个问题。4 索娜 -25.001 莫娜 -25.0001 迷你 -25.000 丽塔 -25.02.4 Shadab 8 Varun 8.9 Sarvesh 9.5 Harsh 10n=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])
查看完整描述

3 回答

?
宝慕林4294392

TA贡献2021条经验 获得超8个赞

它对我有用。如果需要,您可以分配 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])


查看完整回答
反对 回复 2023-06-13
?
小怪兽爱吃肉

TA贡献1852条经验 获得超1个赞

no_of_students = int(input())


records = []


for i in range(no_of_students):


    name = input()


    score = float(input())


    records.append([name, score])


records = dict(records)


scores = sorted(set(records.values()))


second_lowest_score = scores[1]


second_lowest_students = [name for name,score in records if 

score==second_lowest_score]


second_lowest_students.sort()


for name in second_lowest_students:

    print(name)


查看完整回答
反对 回复 2023-06-13
?
繁星淼淼

TA贡献1775条经验 获得超11个赞

t = int(input())

name = []

marks = []

for i in range(t):

    n = input()

    m = input()

    name.append(n)

    marks.append(float(m))

d_marks = []

for i in range(t):

    if(marks[i] not in d_marks):

        d_marks.append(marks[i])

d_marks.sort()

s_min = float(d_marks[1])

l = []

for i in range(t):

    if(float(marks[i]) == s_min):

        l.append(name[i])

l.sort()


for i in range(len(l)):

    print(l[i])


查看完整回答
反对 回复 2023-06-13
  • 3 回答
  • 0 关注
  • 138 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信