https://www.acmicpc.net/problem/11653
11653번: 소인수분해
첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다.
www.acmicpc.net
문제
정수 N이 주어졌을 때, 소인수분해하는 프로그램을 작성하시오.
코드
#include <iostream>
using namespace std;
int main(void){
int n;
cin>>n;
for(int i = 2; i * i <= n ; i++){
while(n % i == 0){
cout<<i<<'\n';
n /= i;
}
}
if(n>1) cout<<n<<'\n';
}
에라토스테네스의 채를 사용해서도 풀이 가능
728x90
'알고리즘 > 백준' 카테고리의 다른 글
백준 1676번: 팩토리얼 0의 개수 (0) | 2020.05.18 |
---|---|
백준 10872번: 팩토리얼 (0) | 2020.05.18 |
백준 6588번: 골드바흐의 추측 (0) | 2020.05.18 |
백준 1929번: 소수 구하기 (0) | 2020.05.18 |
백준 1978번: 소수 찾기 (0) | 2020.05.18 |