b519: 撲克牌遊戲-商競103
標籤 : array poker sort
通過比率 : 37人/39人 ( 95% ) [非即時]
評分方式:
Tolerant

最近更新 : 2015-09-09 22:34

內容

許多人常喜歡玩撲克牌,一副牌共有52 張牌,有四種花色:黑桃、紅桃、方塊、和梅花。在撲克牌的玩法中,A 可作1 點或14 點,而2-10 則為該牌之點數,另外J、Q、K 分別為11、12、13 點。在測試檔案中,每位玩家只會分到5 張牌。下表將52 張牌分別對應到數字1~52,在測試檔案中,將以下表的數字代表某張牌。

  點數
花色 A 2 3 4 5 6 7 8 9 10 J Q K
黑桃 1 2 3 4 5 6 7 8 9 10 11 12 13
紅桃 14 15 16 17 18 19 20 21 22 23 24 25 26
方塊 27 28 29 30 31 32 33 34 35 36 37 38 39
梅花 40 41 42 43 44 45 46 47 48 49 50 51 52

五張牌的相關的牌型如下:
「同花順」為同花色五張連續數字,相同花色的「順子」,得分7分;
「四條」為四張同數字的牌,外加任一單張的五張牌,得分6分;
「葫蘆」為三張同數字,另兩張同數字的牌;一個「一對」和「三條」所組成的五張牌;得分5分;
「順子」為五張數字連續的牌,數字各差1點的連續牌,從 A-2-3-4-5(1-2-3-4-5),到10-J-Q-K-A(有10-11-12-13-14,但沒有J-Q-K-A-2),得分4分;
「三條」五張牌中包含三張同數字的牌,得分3分;
「兩對」五張牌中包含兩對兩同數字的牌,但不是四張相同數字的牌(非四條),得分2分;
「一對」五張牌中包含只有兩張同數字的牌,得分1分;
「雜牌」指不屬於以上任何一種組合,得分 0 分。
本題目的是判斷手上的五張牌是屬於以上那一種牌型,以得分代替牌型。

輸入說明

每個輸入資料含多個玩家取得的撲克牌資料,在檔案 in1.txt 和in2.txt 中,每個玩家分別各使用一副牌,第1 列的數字n 代表有幾筆玩家資料要測試, ,第二列起為測試資料,之後每列為每筆的測試資料,代表每個玩家拿到的五張撲克牌,五張牌所代表的數間以空白隔開,而空白不限定一個。如上表所示,每張牌以一個數字(1~52)代表,例如:以18 代表紅桃5。

 

輸出說明

按照每個玩家手上的 5 張牌,判斷每個玩家手上的五張牌是那一種牌型;以得分代替牌型。

5張牌的數字所對應到的牌型分別如下:
3 44 4 19 7 -> 順子;得分 4 分
6 12 1 32 45 -> 三條;得分 3 分
26 25 2 38 39 -> 兩對;得分 2 分
15 18 2 28 41 -> 四條;得分 6 分
14 21 22 23 24 -> 雜牌;得分 0 分
1 13 26 27 39 -> 葫蘆;得分 5 分

範例輸入
6
3 44 4 19 7
6 12 1 32 45
26 25 2 38 39
15 18 2 28 41
14 21 22 23 24
1 13 26 27 39
範例輸出
4
3
2
6
0
5
測資資訊:
記憶體限制: 64 MB
公開 測資點#0 (25%): 1.0s , <1K
公開 測資點#1 (25%): 1.0s , <1K
公開 測資點#2 (25%): 1.0s , <1K
公開 測資點#3 (25%): 1.0s , <1K
提示 :
標籤:
array poker sort
出處:
103學年度商業類程式設計競賽模擬題 [管理者:
p3a_owhj (阿普二信)
]


編號 身分 題目 主題 人氣 發表日期
14054 b519
142 2018-06-06 11:00