a096: A. 棒球中的統計學
標籤 : 2014國中組初賽
通過比率 : 6人/6人 ( 100% ) [非即時]
評分方式:
Strictly

最近更新 : 2023-08-07 12:29

內容

2014 網際網路程式設計全國⼤賽 國中組初賽

俗話說:「你怎麼能不愛棒球呢?」⾝為棒球迷,除了球賽本⾝的內容以外,「球賽數據」也往往是⼤家關注的焦點。近年來,除了打擊率 (AVG, batting average)、打點 (RBI, run batted in) 以及⾃責分率 (ERA, earned run average) 等等⼤家熟知的基本棒球數據以外,每局被上壘率 (WHIP, walks plus hits per inning pitched) 以及⻑打率 (SLG, slugging percentage) 等等進階數據,也越來越為⼈所知。

事實上,這些統計數據並不只有給粉絲或專家分析⽤,這幾年的職業⽐賽也導⼊了基於分析數據⽽產⽣的戰術,如防守佈陣 (shifts) 等等。從美國、⽇本到台灣,轉播單位也慢慢地讓觀眾看到各式各樣的統計數據,⽽⼤家也逐漸地感受到這些數據確實有在球賽中反映其統計意義。

在棒球統計的進階領域中,「賽伯計量學 (Sabermetrics)」是運動科學中最成功且最著名的學

⾨之⼀,如著名的⽐爾詹姆斯 (Bill James) 便是賽伯統計的⽀持者之⼀。⽽其中最有名的指數,莫過於「攻擊指數 (OPS, on-base plus slugging)」了。OPS 的算法就如同它的英⽂名稱⼀樣:上壘率 (OBP, on-base percentage) 加⻑打率。若我們將各項數據展開,則 OPS 的公式會變成

OPS = AB × (H + BB + HBP)+ TB × (AB + BB + SF + HBP)

AB × (AB + BB + SF + HBP)

  • AB: 打數 (at bats)
  • H: 安打數 (hits)
  • BB: 四壞球保送次數 (base on balls)
  • HBP: 觸⾝球次數 (times hit-by-pitch)
  • TB: 總壘打數 (total bases)
  • SF: ⾼⾶犧牲打次數 (sacrifice flies)

現在,你從網路上搜集到了⼀些穗香聯盟於草創期的打擊記錄⽚段。很不幸地,由於年代久遠,你⼿上的記錄並沒有包含攻擊指數,只有⼀些基本的數據。⾝為⼀個棒球迷,你很想知道當時最厲害的打者是誰,所以決定寫⼀⽀計算攻擊指數的程式。

為了簡化題⽬,我們保證給定的數據只包含計算 OPS 會⽤到的項⽬。

輸入說明

輸⼊的第⼀⾏有⼀個正整數 N,代表共有幾位球員。

接下來共有 N ⾏,每⼀⾏都有六個整數,分別依序代表打數、安打數、四壞球保送次數、觸

⾝球次數、總壘打數和⾼⾶犧牲打次數。

  • N ≤ 200
  • 所有的數值都是⾮負整數且不會超過100000
  • 保證 AB ⾄少為1。
輸出說明

對於每⼀筆輸⼊的球員資料,請輸出⼀⾏,其中包含⼀個實數表⽰該球員的攻擊指數。請將數值四捨五⼊後輸出⾄⼩數點下第三位。

範例輸入
3
539 155 94 3 299 2
644 181 19 12 302 7
561 188 70 4 317 6
範例輸出
0.950
0.780
0.974
測資資訊:
記憶體限制: 512 MB
公開 測資點#0 (100%): 1.0s , <1M
提示 :
標籤:
2014國中組初賽
出處:
NPSC [管理者:
account404 (username)
]


編號 身分 題目 主題 人氣 發表日期
沒有發現任何「解題報告」