python【藍橋杯vip練習題庫】ADV-290成績排序

試題 算法提高 成績排序

資源限制
時間限制:1.0s 內存限制:256.0MB
問題描述
  給出n個學生的成績,將這些學生按成績排序,
  排序規則,優先考慮數學成績,高的在前;數學相同,英語高的在前;數學英語都相同,語文高的在前;三門都相同,學號小的在前
輸入格式
  第一行一個正整數n,表示學生人數
  接下來n行每行3個0~100的整數,第i行表示學號爲i的學生的數學、英語、語文成績
輸出格式
  輸出n行,每行表示一個學生的數學成績、英語成績、語文成績、學號
  按排序後的順序輸出
樣例輸入
2
1 2 3
2 3 4
樣例輸出
2 3 4 2
1 2 3 1
數據規模和約定
  n≤100


"""
@Author:Lixiang

@Blog(個人博客地址): https://lixiang007.top/

@WeChat:18845312866

"""
import math
import string
import sys
import cmath
from itertools import permutations
n=int(input())
list1=[]
for i in range(n):
    list1.append(list(map(int,input().strip().split())))
d={}
for i in range(n):
    d[i+1]=list1[i]
d=sorted(d.items(),key=lambda x:x[1],reverse=True)
list2=[]
for i in range(n):
    list2.append(d[i][1])
for i in range(n):
    for j in list2[i]:
        print(j,end=" ")
    print(d[i][0])

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章