ブルーブリッジカップ試験問題基礎練習分解素因数BASIC-16 JAVA


目次
  • 前言
  • 試験問題基礎練習分解素因数
  • 本題コード
  • 前言
    最近ずっと面接をして、多くの书いたコードはすべてブログを出すのがおっくうで、今补って、しかし注釈は比较的に少ないかもしれなくて、みんなはもし问题があれば私に连络してください
    試験問題の基礎練習分解質因数
    リソース制限時間制限:1.0 sメモリ制限:512.0 MB
    問題記述は区間[a,b]におけるすべての整数の質量係数分解を求める.
    入力フォーマットは、2つの整数a,bを入力します.
    出力フォーマットは、k=a 1 a 2 a 3...(a 1<=a 2<=a 3...、kも小さいものから大きいものまで)の数の分解を行ごとに出力する(具体的には例を参照).
    サンプル入力3 10
    サンプル出力3=3 4=22 5=5 6=23 7=8=22 9=33 10=25
    ヒントはまずすべての素数をふるい出してから分解します.
    データ規模と約定2<=a<=b<=10000
    本題コード
    import java.util.Scanner;
    
    public class PrimeDecomposition {
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            int a = sc.nextInt();
            int b = sc.nextInt();
            int[] array = new int[b - a + 1];
            if (a == b)
                array[0] = a;
            else
                for (int i = a, j = 0; i <= b; i++, j++)
                    array[j] = i;
            for (int value : array) {
                StringBuffer st = new StringBuffer(value + "=");
                int z = 2;
                while (z <= value) {
                    if (value % z == 0) {
                        if (st.charAt(st.length() - 1) != '=') st.append("*");
                        st.append(z);
                        value = value / z;
                        z = 2;
                    } else
                        z++;
                }
                System.out.println(st);
            }
        }
    }