結果
| 問題 | No.29 パワーアップ | 
| コンテスト | |
| ユーザー |  | 
| 提出日時 | 2017-03-08 18:41:21 | 
| 言語 | Java (openjdk 23) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 136 ms / 5,000 ms | 
| コード長 | 1,411 bytes | 
| コンパイル時間 | 3,299 ms | 
| コンパイル使用メモリ | 80,008 KB | 
| 実行使用メモリ | 46,768 KB | 
| 最終ジャッジ日時 | 2025-10-24 21:00:32 | 
| 合計ジャッジ時間 | 6,844 ms | 
| ジャッジサーバーID (参考情報) | judge5 / judge1 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 22 | 
ソースコード
import java.util.Scanner;
public class No29 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] items = new int[10];
        for (int i = 0; i < n; i++) {
            int[] gets = new int[3];
            for (int j = 0; j < gets.length; j++) {
                gets[j] = sc.nextInt() - 1;
            }
            for (int j = 0; j < gets.length; j++) {
                items[gets[j]]++;
            }
        }
        int powerUpCnt = 0;
        for (int i = 0; i < items.length; i++) {
            powerUpCnt += items[i] / 2;
            items[i] = items[i] % 2;
        }
        while (canPowerUp(items)) {
            int cnt = 0;
            for (int i = 0; i < items.length; i++) {
                if (items[i] > 0) {
                    cnt++;
                    items[i]--;
                    if (cnt >= 4) {
                        powerUpCnt++;
                        break;
                    }
                }
            }
        }
        System.out.println(powerUpCnt);
        sc.locale();
    }
    private static boolean canPowerUp(int[] items) {
        int cnt = 0;
        for (int val : items) {
            if (val > 0) {
                cnt++;
            }
        }
        if (cnt >= 4) {
            return true;
        } else {
            return false;
        }
    }
}
            
            
            
        