import java.util.*; import java.util.stream.Stream; // ***問題文*** // 5枚のカードが配られます。それぞれのカードには、1以上13以下のいずれかの整数が書かれています。 // カードに書かれている整数の組み合わせによって役が決まります。 // 配られた5枚のカードが、以下のいずれの役に該当するかを調べてください。 // 複数の役に該当する場合は、以下で先に記述した方の役に該当するものとします。 // FULL HOUSE ある数をちょうど3つと、別の数をちょうど2つ含む。 // THREE CARD ある数をちょうど3つ含む。 // TWO PAIR ある数をちょうど2つと、別の数をちょうど2つ含む。 // ONE PAIR ある数をちょうど2つ含む。 // ***入力*** // A1 A2 A3 A4 A5 // Ai(1≤i≤5)は配られたカードに書かれている整数です。 (1≤Ai≤13) // ***出力*** // 該当する役の名前を出力してください。どの役にも該当しない場合はNO HANDと出力してください。 // 最後に改行してください。すなわち、出力は以下のいずれかになります。 // FULL HOUSE // THREE CARD // TWO PAIR // ONE PAIR // NO HAND public class No227 { public static void main(String[] args) { // 標準入力から読み込む際に、Scannerオブジェクトを使う。 Scanner sc = new Scanner(System.in); HashMap map = new HashMap(); for(int i = 0; i < 5; i++) { int temp = sc.nextInt(); if(map.containsKey(temp)) { map.put(temp, map.get(temp) + 1); }else { map.put(temp, 1); } } if(map.size() == 2) { System.out.println("FULL HOUSE"); }else if(map.size() == 3) { if(map.containsValue(3)) { System.out.println("THREE CARD"); }else { System.out.println("TWO PAIR"); } }else if(map.size() == 4) { System.out.println("ONE PAIR"); }else { System.out.println("NO HAND"); } } }