def hand?(h,s,l) (h.size == s) && (h.values.sort.last == l) end h=Hash(Int32,Int32).new(0) gets.not_nil!.split.map(&.to_i).each{|a|h[a]+=1} puts case when hand?(h,2,3) "FULL HOUSE" when hand?(h,3,3) "THREE CARD" when hand?(h,3,2) "TWO PAIR" when hand?(h,4,2) "ONE PAIR" else "NO HAND" end