-
스티커 모으기(2)코딩 테스트/Level 3 2021. 5. 5. 21:09반응형
programmers.co.kr/learn/courses/30/lessons/12971
같은 문제 입니다.
comdoc.tistory.com/entry/%EB%8F%84%EB%91%91%EC%A7%88
def solution(sticker): if len(sticker) <= 3: return max(sticker) dp1 = [0] * len(sticker) dp1[0] = sticker[0] dp1[1] = max(dp1[0], sticker[1]) dp2 = [0] * len(sticker) dp2[0] = sticker[1] dp2[1] = max(dp2[0], sticker[2]) for i in range(2, len(sticker) - 1): dp1[i] = max(dp1[i - 1], sticker[i] + dp1[i - 2]) dp2[i] = max(dp2[i - 1], sticker[i + 1] + dp2[i - 2]) return max(*dp1, *dp2)
반응형