728x90
문제
정수 N이 주어졌을 때, 소인수분해하는 프로그램을 작성하시오.
소인수란 소수인 인수(약수)를 의미한다.
입력
첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다.
출력
N의 소인수를 한 줄에 하나씩 오름차순으로 출력한다..
예제 입력
72
예제 출력
2
2
2
3
3
예제 입력
3
예제 출력
3
예제 입력
6
예제 출력
2
3
예제 입력
9991
예제 출력
97
103
// 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
import java.util.*;
import java.io.*;
public class Main{
public static void main(String[] args) throws Exception {
// Please Enter Your Code Here
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
int n = Integer.parseInt(st.nextToken());
for(int i = 2; i <= n;) {
if(n%i == 0) {
n /= i;
System.out.println(i);
} else {
i++;
}
if(n == 1) break;
}
}
}
|
cs |
반응형
'CS > 알고리즘_문제풀이(자바)' 카테고리의 다른 글
대소문자 변환 (0) | 2021.09.10 |
---|---|
베르트랑 공준 (0) | 2021.09.10 |
가로수 (0) | 2021.09.09 |
Fly me to the Alpha Centauri (0) | 2021.09.09 |
조합 0의 개수 (0) | 2021.09.09 |