結果
| 問題 | No.227 簡単ポーカー | 
| コンテスト | |
| ユーザー |  | 
| 提出日時 | 2023-04-28 20:07:12 | 
| 言語 | Haskell (9.10.1) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 2 ms / 5,000 ms | 
| コード長 | 624 bytes | 
| コンパイル時間 | 1,232 ms | 
| コンパイル使用メモリ | 171,648 KB | 
| 実行使用メモリ | 6,820 KB | 
| 最終ジャッジ日時 | 2024-11-17 19:02:24 | 
| 合計ジャッジ時間 | 1,746 ms | 
| ジャッジサーバーID (参考情報) | judge5 / judge4 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 14 | 
コンパイルメッセージ
Loaded package environment from /home/judge/.ghc/x86_64-linux-9.8.2/environments/default [1 of 2] Compiling Main ( Main.hs, Main.o ) [2 of 2] Linking a.out
ソースコード
-- [Char]あるいは String を Int にする
toInt :: (String -> Int)
toInt x = read x :: Int
-- 入力を受け取り、[Int]にする
getInts = do
  x <- getLine
  let y = map toInt $ words x
  return y
countElement x = length . filter (x ==)
enumerate hands =
  [countElement x hands | x <- [1 .. 13]]
judge hands
  | 3 `elem` hands =
      if 2 `elem` hands
        then "FULL HOUSE"
        else "THREE CARD"
  | 2 `elem` hands =
      if countElement 2 hands == 2
        then "TWO PAIR"
        else "ONE PAIR"
  | otherwise = "NO HAND"
main = do
  x <- getInts
  let res = (judge . enumerate) x
  putStrLn res
            
            
            
        