상세 컨텐츠

본문 제목

백준 14501 :퇴사 (Dynamic Programming / with Swift )

Swift알고리즘

by 앱등개발자IOS 2023. 9. 5. 13:21

본문

처음 했던 풀이는 1일에 3일 걸려서 10의 비용을 받을 수 있다면, 

dp배열의 3번째 인덱스에 저장해두었다. ( dp[3]에 저장)

 그 이유는 3일차가 끝나면 그 금액을 가져갈 수 있다는 생각으로 비롯한 것이었는데,

그렇게 된다면, 원래는 그 금액을 받고서 4일차부터 새로운 상담을 할 수 있는 것인데, 

3일차부터 겹쳐서 진행하는 논리가 되어 정답보다 더 큰 값이 정답으로 출력되었다.

 

이러한 저장 인덱스만 조정해주었더니, 문제가 해결되었다. 

( 1일차에 3일 걸려서 20을 받을 수 있다면, 4번 인덱스부터 n-1 번 인덱스까지 max( 본인, 20) 과 같은 연산을 수행해준다.

 

관련글 더보기