chyam

[프로그래머스 Lv3, python] - 스티커 모으기(2) 본문

프로그래머스/LV3

[프로그래머스 Lv3, python] - 스티커 모으기(2)

chyam_eun 2026. 6. 30. 15:49

https://school.programmers.co.kr/learn/courses/30/lessons/12971

def solution(sticker):
    answer = 0
    if len(sticker) == 1:
        return sticker[0]
    def repeat(dp):
        for i in range(1,len(dp)):
            if i == 1: # 앞과 합칠수없어서 크기 비교만
                dp[i] = max(dp[i-1],dp[i]) 
            else:
                dp[i] = max(dp[i-1],dp[i-2]+dp[i]) # 전전과 합치거나 앞과 비교
        return dp
    dp1 = repeat(sticker[:-1]) # 맨 뒤 제외
    dp2 = repeat(sticker[1:]) # 맨 앞 제외

    return max(max(dp1),max(dp2))