프로그래머스 - 멀리 뛰기 feat. DP
·
Algorithm/programmers
DP 를 사용하여 쉽게 구현하였습니다  func solution(_ n:Int) -> Int { var arr = [1,1,2] if n
Swift - 백준 1003번 피보나치 함수
·
Algorithm/Baekjoon
피보나치 함수 문제는 DP 알고리즘을 사용하면 쉽게 풀 수 있습니다  아래처럼 피보나치 수열에서 0과 1이 각각 몇번 나오는지 미리 계산을 하지 않으면 시간초과가 발생합니다.let num = Int(readLine()!)!var one = 0var zero = 0func fibonacci(n: Int) { if n == 0 { zero += 1 } else if n == 1 { one += 1 } else { fibonacci(n: n-1) fibonacci(n: n-2) }}for _ in 1...num { fibonacci(n: Int(readLine()!)!) print(zero, one) one = 0 z..
Swift - 백준 2839번 설탕 배달 (다이나믹 프로그래밍 DP)
·
Algorithm/Baekjoon
2839번 문제는 대표적인 다이나믹 프로그래밍(DP) 문제라고 할 수 있겠습니다 다이나믹 프로그래밍이란 이전에 풀어던 값을 한번 쓰고 버리는 것이 아닌 값을 저장하였다가 이후 값을 찾아내는데 있어서 또 사용하는 방식의 프로그래밍 방식입니다. 2839번 설탕 배달 문제도 마찬가지입니다. 문제 조건봉지는 3kg 와 5kg 의 설탕을 담을 수 있는 봉지가 존재합니다.최소한의 봉지로 원하는 설탕만큼을 배달해야 합니다.정확하게 N 킬로그램을 만들 수 없다면 -1 을 출력합니다.문제 해결문제를 해결하기 위해서는 먼저 작은 숫자의 출력값부터 생각해봅니다.1은 -12는 -13은 1, arr[3] = arr[3]4는 -15는 1, arr[5] = arr[5]6은 2, arr[6] = arr[3] + arr[3]7은 -1..
ytw_developer
'swift dp' 태그의 글 목록