반응형 DP2 [LeetCode] 70. Climbing Stairs [JAVA(자바)] 문제 👉 1. 문제 (계단 오르기) 계단을 매번 1개 혹은 2개를 오를 수 있을 때, 계단을 오르는 방법은 몇개인가? Input: n = 3 Output: 3 Explanation: There are three ways to climb to the top. 1. 1 step + 1 step + 1 step 2. 1 step + 2 steps 3. 2 steps + 1 step2. 풀이 다이나믹 프로그래밍 (DP) 을 이용한 풀이 피보나치 수열 (단순 재귀 함수) f(n) = f(n-1) + f(n-2) f(5) = f(4) + f(3) -> 재귀함수를 통해 반복적인 연산 수행 f(4) = f(4) + f(2) f(3) = f(2) + f(1) f(5)를 구하기 위해 이전에 연산을 했던 f(4), f(3).. 2021. 11. 24. [백준] 14501 - 퇴사 [Python(파이썬)] '삼성 SW 역량 테스트' 기출 문제 입니다. 😀 문제 👉 14501번: 퇴사 1. 문제 상담 일정표는 상담 기간과 상담 금액으로 이루어져 있다. N일 동안 적절한 상담 조합을 통해 구할 수 있는 최대 금액을 출력한다. 2. 풀이 DP(Dynamic Programming)을 이용한 문제 풀이 크기가 N인 DP 배열 생성 당일 상담이 퇴사 전에 가능할 경우 상담 선택한다. 당일 이전에 상담이 끝나는 날 중 보상이 가장 큰 날의 보상을 당일 보상에 더한다. DP배열에서 가장 보상이 큰 날을 return 3. 코드 def solution(): N = int(input()) L = [list(map(int, input().split())) for _ in range(N)] dp = [0]*N # N일 동안 선택.. 2021. 11. 22. 이전 1 다음 반응형