結果

問題 No.212 素数サイコロと合成数サイコロ (2)
ユーザー mobius_bkstmobius_bkst
提出日時 2015-05-22 23:48:18
言語 Java21
(openjdk 21)
結果
MLE  
実行時間 -
コード長 2,133 bytes
コンパイル時間 3,893 ms
コンパイル使用メモリ 79,204 KB
実行使用メモリ 737,580 KB
最終ジャッジ日時 2024-07-06 05:38:40
合計ジャッジ時間 10,247 ms
ジャッジサーバーID
(参考情報)
judge4 / judge3
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 47 ms
37,028 KB
testcase_01 AC 55 ms
37,024 KB
testcase_02 AC 46 ms
36,896 KB
testcase_03 AC 51 ms
37,252 KB
testcase_04 AC 300 ms
86,188 KB
testcase_05 MLE -
testcase_06 -- -
testcase_07 -- -
testcase_08 -- -
testcase_09 -- -
権限があれば一括ダウンロードができます

ソースコード

diff #

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;

public class No212 {
    static int[] prime = { 2, 3, 5, 7, 11, 13 };
    static int[] composite = { 4, 6, 8, 9, 10, 12 };

    public static void main(String[] args) {
        try {
            BufferedReader br = new BufferedReader(new InputStreamReader(
                    System.in));
            int[] a = strToIntArray(br.readLine());
            List<Integer> ansList = new ArrayList<Integer>();
            int P = a[0];
            int C = a[1];

            for (int i = 0; i < P; i++) {
                List<Integer> ansList_tmp = new ArrayList<Integer>();
                for (int j : prime) {
                    if (i == 0) {
                        ansList_tmp.add(j);
                    } else {

                        for (Integer k : ansList) {
                            ansList_tmp.add(j * k);
                        }
                    }

                }
                ansList = ansList_tmp;

            }

            for (int i = 0; i < C; i++) {
                List<Integer> ansList_tmp = new ArrayList<Integer>();
                for (int j : composite) {
                    if (P == 0 && i == 0) {
                        ansList_tmp.add(j);
                    } else {

                        for (Integer k : ansList) {
                            ansList_tmp.add(j * k);
                        }
                    }

                }
                ansList = ansList_tmp;

            }

            long sum = 0;
            for (Integer integer : ansList) {
                sum += integer;
            }

            System.out.println(sum / (double) ansList.size());
        } catch (Exception e) {
            System.err.println("Error:" + e.getMessage());
        }
    }

    static int[] strToIntArray(String S) {
        String[] strArray = S.split(" ");
        int[] intArray = new int[strArray.length];
        for (int i = 0; i < strArray.length; i++) {
            intArray[i] = Integer.parseInt(strArray[i]);
        }
        return intArray;
    }
}
0