#31656: 拜託大老幫幫我


yuxuan0912 (李毓萱Laura)

學校 : 不指定學校
編號 : 197335
來源 : [1.34.135.237]
最後登入時間 :
2023-12-07 21:47:26
h075. 成績排名 | From: [1.34.135.237] | 發表日期 : 2022-08-12 20:00

x=int(input())

f=[[0 for xx in range(5)] for xxx in range(x)]


for i in range(x):
    
    f[i]=list(map(int,input().split()))
    
    f[i].append(0)
    
    f[i][4] =  ( f[i][1]*5 + f[i][2]*3 + f[i][3]*2 )/10  # [0]座號 [1]資訊 [2]數學 [3]英文 [4]加權平均
    
    
for j in range(5):
    
    f.sort( reverse = j , key = lambda n : n[j] ) #取加權平均比較(由大到小)(f本身改變 從最後比較的開始比較)
    
    
for l in f:
    
    print( "{:g} {:g}" . format( l[0] , l[4] ) )

 

 
#31671: Re: 拜託大老幫幫我


cges30901 (cges30901)

學校 : 不指定學校
編號 : 30877
來源 : [111.71.216.22]
最後登入時間 :
2024-12-03 08:31:08
h075. 成績排名 | From: [101.137.58.63] | 發表日期 : 2022-08-13 17:03

x=int(input())

f=[[0 for xx in range(5)] for xxx in range(x)]


for i in range(x):
    
    f[i]=list(map(int,input().split()))
    
    f[i].append(0)
    
    f[i][4] =  ( f[i][1]*5 + f[i][2]*3 + f[i][3]*2 )/10  # [0]座號 [1]資訊 [2]數學 [3]英文 [4]加權平均
    
    
for j in range(5):
    
    f.sort( reverse = j , key = lambda n : n[j] ) #取加權平均比較(由大到小)(f本身改變 從最後比較的開始比較)
    
    
for l in f:
    
    print( "{:g} {:g}" . format( l[0] , l[4] ) )

 


要考慮同分的狀況

 
#31673: Re: 拜託大老幫幫我


cges30901 (cges30901)

學校 : 不指定學校
編號 : 30877
來源 : [111.71.216.22]
最後登入時間 :
2024-12-03 08:31:08
h075. 成績排名 | From: [101.137.58.63] | 發表日期 : 2022-08-13 17:24


for j in range(5):
    
    f.sort( reverse = j , key = lambda n : n[j] ) #取加權平均比較(由大到小)(f本身改變 從最後比較的開始比較)
       


所以你比較的順序應該是(1)座號(2)英文(3)數學(4)資訊(5)平均

 
ZeroJudge Forum