棒球場上紅藍兩隊的龍爭虎鬥,球迷熱情地為球場上的球員加油。投手不斷的投球,打擊者不斷的揮擊球棒,兩隊人馬都盡最大的努力爭取最好的表現…好啦好啦,我知道這是wii sport的其中一個遊戲= =,不過這不是重點,重點是今天比賽的記分員請假了!什麼?你問我為什麼記分員會請假?好問題…我也不知道,總之他是請假沒來了。怎麼辦?每一分都很重要啊!
於是主審裁判把你叫了過去,叫你記錄下每一個打者上場打擊的狀況。不過,主審裁判體諒出題者對於棒球記分知識的嚴重不足,他只要求你記錄下代表三振的 K
(Strikeout),代表保送的 W
(Walk),以及一壘安打 S
(Single),二壘安打 D
(Double),三壘安打 T
(Three bases?),全壘打 H
(Home Run)以及其他的出局狀況 O
(Out,例如滾地球、飛球、刺殺、觸殺等等)。這次的棒球比賽共比九局,每局分上、下兩個半局。上半局由紅隊進攻,下半局由藍隊進攻。每個半局累積達到三名打擊者或跑者出局就結束。
若比完九局之後兩隊平手,那麼 本來 應該要進入延長賽(也就是第十局、第十一局...),直到一局結束之後比分有落差為止。 但是 在這場比賽中,平手就是平手,沒有延長賽。而且 本來 九局上半結束的時候,若藍隊已經贏過紅隊,比賽照理來說應該結束, 但是 在這場比賽中,仍然會把九局下半打完,而且分數照計(真差勁XD)。
比賽結束之後,你正準備把計分表拿給裁判,但是你驚訝的發現你居然只紀錄打者狀況,連該打擊是哪一隊的打者打的都不知道。大概長的像這樣:
KOKSKODKDDOOKOOO...
這下子麻煩了,該怎麼算出兩隊真正的分數呢?寫個程式來解決它吧!
當然,你必須信任你的記分表,這場比賽裡沒有任何的戰術或特殊情況發生,例如雙殺、盜壘、犧牲打、不死三振等等都不會出現。而且當有人擊出一壘安打的時候,所有跑者都只往前跑一壘,二壘和三壘安打以此類推。
如果有一名跑者在某一局之內打出安打或被保送以後依序繞過一壘、二壘、三壘、然後回到本壘板,那麼他所屬的隊伍可以得到一分。有人被四壞球保送的時候,打者會上一壘,若此時一壘有人,那麼一壘的跑者會被推進到二壘,此時二壘若還是有人,那麼二壘的跑者會被推進至三壘,若此時三壘仍然有人,那麼三壘的跑者就會被擠回本壘板,得到一分!
一個檔案內可能有多筆測試資料。每筆測試資料佔一列,為一個長度不超過 $10,000$ 的字串,代表比賽紀錄。以 EOF 作為輸入結束。
一個比賽一定會打完九局下半啦,平手就算了這樣。
註:因為出題者對於棒球知識實在有限,因此測試資料的內容請依照Description處理。若與真實比賽有出入,敬請見諒。
對於任何一場比賽,請輸出兩個數字,分別代表紅隊以及藍隊的該場比賽得分。比賽分數從0:0開始計分。
原TIOJ1016 / Problem Setter: Tmt, TDYa127, TimeString
No. | Testdata Range | Score |
---|---|---|
1 | 0 | 100 |