b083: npsc-2007國中組決賽 D. MVP多鍵值排序

出處 http://zerojudge.tw/ShowProblem?problemid=b083

內容 :

中華職棒十八年的賽季已經結束,又到了選年度MVP的時候,小批是個很熱衷棒球的國中生,每年球季結束後他最喜歡做的事就是跟同學打賭誰是年度MVP,很不幸的今年小批又賭輸了,只好乖乖的把他好不容易才拿到的張泰山全壘打球送給他同學小涵。

但經過幾年的觀察,小批發現了選年度MVP的規則,其中有分投手的規則以及打者的規則,其中投手的部分首先是比勝場數誰比較多,也就是投手一年贏了幾場,如果有兩個人一樣多的話再比誰的敗場數比較少,還是一樣的話就比誰的防禦率比較低。而打者的部分則是先比誰的全壘打比較多,有人一樣多的話再比誰的安打比較多,還是一樣的話就比誰的打擊率比較高。

因此小批決定明年一定要猜中年度MVP,但他很不善於整理數據,因此他希望你能幫他從資料中挑出最好的投手以及最好的打者,再交給他自己做決定。

輸入說明 :

輸入檔中會有多筆資料,第一行是一個正整數k,代表一共有多少組資料,接下來是k組測試資料,每組測試資料的第一行是一個數字n,代表一共有多少球員,n不會超過1000,接下來是n行球員的資料,球員可能是投手也可能是打者,投手的資料格式如下:

P <球員姓名> <勝場數> <敗場數> <防禦率>

勝場數和敗場數都是不超過100的正整數,防禦率則是浮點數,而打者的資料格式如下:

B <球員姓名> <全壘打數> <安打數> <打擊率>

全壘打數和安打數都是不超過1000的正整數,打擊率則是浮點數,球員姓名最長不會超過100個字元且不會有空白,一組測試資料中至少會有一個投手以及一個打者,不會有選手的三項數據都一樣。

輸出說明 :

對每組測試資料,請分別依好壞順序輸出所有的投手以及打者,格式請參考範例輸出,每筆測試資料的輸出用五個等號隔開。

範例輸入 :

2

4

P Wang 20 6 2.765

P Matsuzaka 20 7 1.843

B CCF 23 183 0.345

B Ichiro 20 200 0.399

4

P Wang 20 6 2.765

B CCF 23 183 0.345

P Matsuzaka 20 7 1.843

B Ichiro 20 200 0.399

範例輸出 :

P Wang

P Matsuzaka

B CCF

B Ichiro

=====

P Wang

P Matsuzaka

B CCF

B Ichiro

提示 :

出處 :

2007 NPSC 國中組決賽

解題策略

自訂投手與打擊的資料結構,再使用函式庫algorithm的sort函式排序。