알고리즘/BOJ(C++)

[BOJ] 11653 :: 소인수분해

쿠마쿠마34 2018. 6. 19. 23:21
반응형

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


정수 n을 입력받아 그 소인수를 모두 구해 출력해주는 문제 입니다.


n의루트값 전까지 나눌 수 있는 한 모두 나눠서 출력해 주면 됩니다!

n이 소수인 경우 나눌 수 있는 값이 없으므로 예외처리 해서 출력해 줍니다!


#include <iostream>
using namespace std;
int main()
{
int n;
cin >> n;
for (int i = 2; i*i <= n; i++)
{
while (n % i == 0)
{
printf("%d\n", i);
n /= i;
}
}
if (n > 1)
printf("%d\n", n);
}


반응형