https://programmers.co.kr/learn/courses/30/lessons/12913
function solution(land) {
for(let i=1; i<land.length; i++){
land[i][0]+=Math.max(
land[i-1][1],
land[i-1][2],
land[i-1][3]
)
land[i][1]+=Math.max(
land[i-1][0],
land[i-1][2],
land[i-1][3]
)
land[i][2]+=Math.max(
land[i-1][0],
land[i-1][1],
land[i-1][3]
)
land[i][3]+=Math.max(
land[i-1][0],
land[i-1][1],
land[i-1][2]
)
}
let answer=land[land.length-1];
return Math.max(...answer);
}
이분의 풀이를 참고해서 풀었다. 엄청 애먹었던 문제인데, 간단하게 풀 수 있는 문제였다!
블로그에 원리도 잘 설명되어있어서, 이해가 잘 됐다👏🏻
알고리즘 문제에 겁내지말고 끝까지 풀자!