Lv2. 땅따먹기

Hello·2022년 8월 6일
0

코딩테스트 연습 > 땅따먹기

1. 풀이 설명

  1. 2번째 row부터 for 문을 돌면서 이전 row 중 현재 col과 다르고, 가장 큰 값을 land[i][j] 에 더한다.

  2. 마지막 row 의 값 중 가장 큰 값을 반환한다.

2. 나의 풀이

def solution(land):
    for i in range(1, len(land)):
        for j in range(4):
            land[i][j] += max(land[i-1][k] for k in range(4) if k != j)
    return max(land[-1])

3. 배운점

  1. 이전 값을 활용해서 현재 값 (land[i][j])을 업데이트 하는 방법
  • 이전 row 중 최대 값
max(land[i-1][k] for k in range(4))
profile
안녕하세요 :)

0개의 댓글