BAEKJOON_11653) 소인수분해

11653) 소인수분해 (19.03.24)







* i 를 2부터 시작해서 주어진 값을 나누었을 때, 나누어 진다면 i 를 출력하고, 값을 i로 나누어준다.
* 새로 정의된 값을 i로 나누었을 때, 나누어지지 않는다면, i 를 증가하고 반복한다.
* 마지막 값이 1보다 크다면 남은 값을 출력해준다.

* 여기서 i 를 i*i 가 n 보다 같거나 작은, 즉, 루트i 까지만 하는 이유는
* 앞 문제에서 두 수를 더했을 때, 한 수는 n/2 보다 작아야 했듯이,
* 두 수를 곱했을 때, n 이 되려면, 한 수는 루트 i 보다 작아야 하기 때문이다.

댓글

이 블로그의 인기 게시물