title: "[프로그래머스] 땅따먹기 Python 파이썬 해설 (Level 2) - 이도훈"
cleanUrl: "programmers/12913"
description: "프로그래머스 Level 2 문제 [땅따먹기]의 풀이를 정리합니다."
def solution(land):
# Bottom-up DP로 풀어야 시간 초과가 나지 않는다.
R, C = len(land), len(land[0])
dp = [[-1 for _ in range(C)] for _ in range(R)]
for c in range(C):
dp[0][c] = land[0][c]
for r in range(1, R):
for c in range(C):
dp[r][c] = max(dp[r-1][i] for i in range(C) if i != c) + land[r][c]
return max(dp[R-1][c] for c in range(4))
프로그래머스 코딩테스트 연습 https://school.programmers.co.kr/learn/challenges