코드일기장

[백준] 11653번: 소인수분해 본문

PS/백준

[백준] 11653번: 소인수분해

codeStudy123 2022. 2. 25. 18:57

 

 

 

 

제목: 소인수분해

실버5

 

 

 


문제

정수 N이 주어졌을 때, 소인수분해하는 프로그램을 작성하시오.

입력

첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다.

출력

N의 소인수분해 결과를 한 줄에 하나씩 오름차순으로 출력한다. N이 1인 경우 아무것도 출력하지 않는다.


예제 입력 1 복사

72

예제 출력 1 복사

2
2
2
3
3

예제 입력 2 복사

3

예제 출력 2 복사

3

예제 입력 3 복사

6

예제 출력 3 복사

2
3

예제 입력 4 복사

2

예제 출력 4 복사

2

예제 입력 5 복사

9991

예제 출력 5 복사

97
103

 

 

 

 

 

🔑 코드


import java.io.*;

public class Main {

	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		int N = Integer.parseInt(br.readLine());

		if(N!=1) {
			num_method(N);
		}

	}
	static void num_method(int n) {
		int num = n;
		int j=2;
		while (1 < num) {
			if(num%j==0) {
				System.out.println(j);
				num/=j;
				j=2;
			}else {
				j++;
			}
		}
	}
}

 

 

 

 

 

 

 

 

알고리즘 분류

https://www.acmicpc.net/problem/11653

 

11653번: 소인수분해

첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다.

www.acmicpc.net

 

 

 

 

 

 

커버사진

https://www.flaticon.com/kr/free-icon/algorithms_1753819

<a href="https://www.flaticon.com/kr/free-icons/" title="연산 아이콘">연산 아이콘  제작자: Flat Icons - Flaticon</a>

 

 

 

Comments