ALGORITHM
[JAVA] 백준 11653번- 소인수분해
연듀
2022. 7. 2. 15:16
https://www.acmicpc.net/problem/11653
11653번: 소인수분해
첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다.
www.acmicpc.net
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int i = 2;
while (n >= i) {
if (n % i == 0) {
n = n / i;
System.out.println(i);
} else {
i++;
}
}
}
}
입력받은 숫자 n을 2부터 시작하는 i 로 나눈다.
나머지가 0이면 i를 출력하고, n을 i로 나눈 값으로 n을 바꾼다.
나머지가 0이 아니면 i를 하나씩 증가시켜 n을 구한다.
n이 i보다 작아진다면 while문을 빠져나온다.
반응형