試題 演算法提高 成績排序

2021-10-08 16:09:51 字數 978 閱讀 1255

藍橋杯習題答案彙總

資源限制

時間限制:1.0s 記憶體限制:256.0mb

問題描述

給出n個學生的成績,將這些學生按成績排序,

排序規則,優先考慮數學成績,高的在前;數學相同,英語高的在前;數學英語都相同,語文高的在前;三門都相同,學號小的在前

輸入格式

第一行乙個正整數n,表示學生人數

接下來n行每行3個0~100的整數,第i行表示學號為i的學生的數學、英語、語文成績

輸出格式

輸出n行,每行表示乙個學生的數學成績、英語成績、語文成績、學號

按排序後的順序輸出

樣例輸入

21 2 3

2 3 4

樣例輸出

2 3 4 2

1 2 3 1

資料規模和約定

n≤100

分析:利用字典來寫即可。

n =

int(

input()

)res =

for i in

range

(n):

t =list

(map

(int

,input()

.split())

)# math,english,chinese

res[i+1]

= tres =

sorted

(res.items(

),key=

lambda x:x[1]

,reverse=

true

)for i in

range

(n):

for j in

range(3

):print

(res[i][1

][j]

,end=

' ')

print

(res[i][0

])

藍橋杯 試題 演算法提高 成績排序

資源限制 時間限制 1.0s 記憶體限制 256.0mb 問題描述 給出n個學生的成績,將這些學生按成績排序,排序規則,優先考慮數學成績,高的在前 數學相同,英語高的在前 數學英語都相同,語文高的在前 三門都相同,學號小的在前 輸入格式 第一行乙個正整數n,表示學生人數 接下來n行每行3個0 100...

藍橋杯 試題 演算法提高 成績排名

小明剛經過了一次數學考試,老師由於忙碌忘記排名了,於是老師把這個光榮的任務交給了小明,小明則找到了聰明的你,希望你能幫他解決這個問題。第一行包含乙個正整數n,表示有個人參加了考試。接下來n行,每行有乙個字串和乙個正整數,分別表示人名和對應的成績,用乙個空格分隔。輸出一共有n行,每行乙個字串,第i行的...

DAY9 演算法提高 成績排序(1)(2)

資源限制 時間限制 1.0s 記憶體限制 256.0mb 問題描述 給出n個學生的成績,將這些學生按成績排序,排序規則,優先考慮數學成績,高的在前 數學相同,英語高的在前 數學英語都相同,語文高的在前 三門都相同,學號小的在前 輸入格式 第一行乙個正整數n,表示學生人數 接下來n行每行3個0 100...