結果
問題 | No.227 簡単ポーカー |
ユーザー |
![]() |
提出日時 | 2016-12-18 15:00:39 |
言語 | Bash (Bash 5.2.21) |
結果 |
AC
|
実行時間 | 6 ms / 5,000 ms |
コード長 | 742 bytes |
コンパイル時間 | 144 ms |
コンパイル使用メモリ | 5,376 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-12-24 06:35:45 |
合計ジャッジ時間 | 876 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
外部呼び出し有り |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 14 |
ソースコード
#!/bin/bash # カードの一覧と手の中のカードの種類の一覧を保持しておく。 cards=$(cat /dev/stdin) types=$(for card in $cards; do echo $card; done | sort -g | uniq) # 2枚組と3枚組のカードの種類を数える。 double=0 triple=0 for type in $types; do cnt=0 for card in $cards; do [ $card -eq $type ] && cnt=$((cnt + 1)) done [ $cnt -eq 2 ] && double=$((double + 1)) [ $cnt -eq 3 ] && triple=$((triple + 1)) done # 2枚組と3枚組の数から役を判定する。 if [ $triple -eq 1 -a $double -eq 1 ]; then echo "FULL HOUSE" elif [ $triple -eq 1 ]; then echo "THREE CARD" elif [ $double -eq 2 ]; then echo "TWO PAIR" elif [ $double -eq 1 ]; then echo "ONE PAIR" else echo "NO HAND" fi