본문 바로가기
자료구조&알고리즘

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

by JongSeok 2023. 1. 19.
 

11653번: 소인수분해

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

www.acmicpc.net

나의 풀이

fun main(args: Array<String>) {
    var N = readLine()!!.toInt()

    var count = 2
    while (N != 1) {
        if (N % count == 0) {
            println(count)
            N /= count
        } else {
            count++
        }
    }
}

☞ 입력값 N에 대해 2부터 시작하는 count로 나누어지는지 확인합니다. 나누어진다면 count를 증가시키지 않고 같은 값으로 다시 확인합니다. 계속해서 나누어지지 않더라도 결국 count와 N이 같아지는 순간까지 나누면 N을 count로 나눈 값이 1이 되기 때문에 while문이 종료됩니다.

728x90
반응형