풀이
- 해당 문제는 DP를 활용한 문제로
- 해당 유형의 DP는 자주 사용하는 방식이기에 꼭 기억하고 있으면 좋다.
- for을 활용하여 1번째 인덱스의 land 위치에서 이전 값에서
- 현재 j의 인덱스 위치가 아닌 값들 중 가장 큰 값을 현재 값에 누적합하여
- 최종적으로 마지막 land의 배열 중 가장 큰 값을 전달하여 해결하는 방법
def solution(land):
for i in range(1,len(land)):
for j in range(4): land[i][j] += max(land[i-1][:j]+land[i-1][j+1:])
return max(land[-1])
'알고리즘' 카테고리의 다른 글
[프로그래머스, 파이썬] 문자열 내 마음대로 정렬하기 (0) | 2024.03.14 |
---|---|
[프로그래머스, 파이썬] 콜라 문제 (0) | 2024.03.14 |
[프로그래머스, 파이썬] 명예의 전당 (1) (0) | 2024.03.13 |
[프로그래머스, 파이썬] 추억 점수 (0) | 2024.03.13 |
[프로그래머스, 파이썬] 주식가격 (0) | 2024.03.12 |