새소식

인기 검색어

프로그래머스/Lv.2

[Swift] 숫자 변환하기

  • -
import Foundation

func solution(_ x: Int, _ y: Int, _ n: Int) -> Int {
    var arr = Array(repeating: Int.max, count: y + 1)
    arr[x] = 0

    for i in x...y where arr[i] != Int.max {
        var num = i
        if num + n <= y {
            arr[num + n] = min(arr[num] + 1, arr[num + n])
        }
        if num * 2 <= y {
            arr[num * 2] = min(arr[num] + 1, arr[num * 2])
        }
        if num * 3 <= y {
            arr[num * 3] = min(arr[num] + 1, arr[num * 3])
        }
    }
    return arr[y] == Int.max ? -1 : arr[y]
}

 

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.