반응형
https://www.acmicpc.net/problem/1463
1463번: 1로 만들기
첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다.
www.acmicpc.net
import java.util.Scanner
fun main() {
val sc = Scanner(System.`in`)
var n = sc.nextInt()
var dp = IntArray(n+1)
dp[1] = 0
for (i in 2..n){
dp[i] = dp[i-1] + 1
if (i % 2 == 0){
dp[i] = Math.min(dp[i], dp[i/2]+1)
}
if (i % 3 == 0){
dp[i] = Math.min(dp[i], dp[i/3] + 1)
}
}
print(dp[n])
}
반응형
'Algorithm > [알고리즘]BACKJOON - Java&Kotlin' 카테고리의 다른 글
백준 Kotlin 4948번 : 베르트랑 공준 (0) | 2022.05.11 |
---|---|
백준 Kotlin 1158번 : 요세푸스 문제 (0) | 2022.05.09 |
백준 Kotlin 9020번 : 골드바흐의 추측 (0) | 2022.04.27 |
백준 Kotlin 11729번 : 하노이 탑 이동 순서 (0) | 2022.04.21 |
백준 Kotlin 2751번 : 수 정렬하기 2 (0) | 2022.04.13 |