java

백준 11653 소인수분해 자바 java

MiaCoder 2024. 1. 12. 14:44

아이디어 : 소인수 분해의 경우 같은 수로 계속 나누어야 한다. 이 방법을 생각해 보자.

                

 

 

import java.util.ArrayList;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws Exception {

        Scanner sc = new Scanner(System.in);
        ArrayList<Integer> list = new ArrayList<>();

        int N = sc.nextInt();

        for (int i = 2; i <= N; i++) {
            while (N % i == 0) {
                list.add(i);
                N = N / i;
            }

        }

        for (int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }
        sc.close();
    }
}