defmodule Main do def main() do a = IO.gets("") |> String.trim |> String.split IO.puts judge(count(%{}, a)) end def count(m, []) do m end def count(m, [h | t]) do new_m = case Map.has_key?(m, h) do false -> Map.put_new(m, h, 1) true -> Map.update!(m, h, fn x -> x + 1 end) end count(new_m, t) end def judge(m) do case Map.values(m) |> Enum.sort do [2, 3] -> "FULL HOUSE" [1, 1, 3] -> "THREE CARD" [1, 2, 2] -> "TWO PAIR" [1, 1, 1, 2] -> "ONE PAIR" _ -> "NO HAND" end end end