一副基本的撲克牌有四種花色,分別為黑桃(Spade),紅心(Heart),梅花(Club),方塊(Diamond),而每種花色由大到小排皆為A、K、Q、J、10、9、8、7、6、5、4、3、2。如果今天你要做一個撲克牌遊戲,印出牌面一直都是一件很重要的事情,所以今天你會得到四家拿到的牌,然後替玩家整理好之後印在畫面上給大家看。
第一行會給定$t$,$t \leq 5$,代表這組測試資料下共有t次發牌
每次發牌共52行,代表52張牌在牌堆裡的順序
每行資料以(花色)(數字)來表示牌
為求方便,這邊將以S代表黑桃,H代表紅心,C代表梅花,D代表方塊,而T代表10(Ten)
所以HJ即為紅心Jack,而DT則為方塊10
這52張牌要照東南西北的方式發下去,意即為第一張牌給東家,第二張牌給南家,三給西,四給北,五又給東,依此類推,最後第52張是在北家的手上
每家拿到牌之後要先按花色再按數字整理過牌,統一規定花色必須照黑桃、紅心、梅花、方塊的方式擺放,而數字必須由大到小擺放
一張正常的撲克牌長這個樣子:
若是不考慮中間的花色,那約略可以簡化成這樣子
-----
|7 |
|C C|
| 7|
-----
其中的橫線為減號,直線則為C語言中'or'的符號
那若是兩張牌在一起,變成這樣會比較好拿在手上
-------
|K|7 |
|C|C C|
| | 7|
-------
那一手牌照花色大小順序排好可能就會長得像這樣:
-----------------------------
|A|9|6|3|T|3|2|K|Q|7|J|6|5 |
|S|S|S|S|H|H|H|C|C|C|D|D|D D|
| | | | | | | | | | | | | 5|
-----------------------------
若是東西家也這樣放的話,那就需要準備很寬很扁的瑩幕,顯然是有點不太現實,
所以東西家的牌每個花色就要換行一次,如果上面那手牌是西家的牌,那就會變成這樣
-----------
|A|9|6|3 |
|S|S|S|S S|
| | | | 3|
-----------
---------
|T|3|2 |
|H|H|H H|
| | | 2|
---------
---------
|K|Q|7 |
|C|C|C C|
| | | 7|
---------
---------
|J|6|5 |
|D|D|D D|
| | | 5|
---------
假設上面每個符號的高寬都是一格
整個牌桌的高與寬都是32格
因此我們規定:
一、南北家整個牌的最左邊空出一格
二、南北家與東西家上下之間也空出一格
三、西家對齊最左邊
四、東家對齊最右邊
請對每次發牌印出他的牌面
同一筆測試資料內兩次發牌以一個換行隔開
1 SQ DK HK S3 CA C2 H3 DJ C6 ST DQ DA D5 CK C9 HJ H9 C3 SA H2 H7 C4 S6 S4 SK CT DT D2 S7 SJ HT CQ H8 C7 S5 H4 HQ D9 S8 D6 H6 D8 HA S9 H5 D7 D3 C5 S2 D4 CJ C8
----------------------------- |9|4|3|J|4|2|Q|8|5|A|J|6|2 | |S|S|S|H|H|H|C|C|C|D|D|D|D D| | | | | | | | | | | | | | 2| ----------------------------- ----------- ----------- |A|8|6|5 | |K|Q|7|2 | |S|S|S|S S| |S|S|S|S S| | | | | 5| | | | | 2| ----------- ----------- ----------- --------------- |A|K|T|3 | |Q|9|8|7|6|5 | |H|H|H|H H| |H|H|H|H|H|H H| | | | | 3| | | | | | | 5| ----------- --------------- ------- ------- |J|9 | |A|6 | |C|C C| |C|C C| | | 9| | | 6| ------- ------- --------- ----- |Q|T|3 | |5 | |D|D|D D| |D D| | | | 3| | 5| --------- ----- ----------------------------- |J|T|K|T|7|4|3|2|K|9|8|7|4 | |S|S|C|C|C|C|C|C|D|D|D|D|D D| | | | | | | | | | | | | | 4| -----------------------------
30%的測試資料 t=1
No. | Testdata Range | Score |
---|---|---|
1 | 0 | 10 |
2 | 1 | 10 |
3 | 2 | 10 |
4 | 3 | 10 |
5 | 4 | 10 |
6 | 5 | 10 |
7 | 6 | 10 |
8 | 7 | 10 |
9 | 8 | 10 |
10 | 9 | 10 |