땅따먹기 게임을 하려고 합니다. 땅따먹기 게임의 땅(land)은 총 N행 4열로 이루어져 있고, 모든 칸에는 점수가 쓰여 있습니다. 1행부터 땅을 밟으며 한 행씩 내려올 때, 각 행의 4칸 중 한 칸만 밟으면서 내려와야 합니다. 단, 땅따먹기 게임에는 한 행씩 내려올 때, 같은 열을 연속해서 밟을 수 없는 특수 규칙이 있습니다.
마지막 행까지 모두 내려왔을 때, 얻을 수 있는 점수의 최대값을 return하는 solution 함수를 완성해 주세요.
입출력 예시
land : [[1,2,3,5],[5,6,7,8],[4,3,2,1]]
-> 16
function solution(land) {
var answer = 0;
var pre = -1;
for(var i=1; i<land.length; i++) {
for(var j=0; j<4; j++) {
var [max, idx] = find_max(land[i - 1], j);
land[i][j] += max;
pre = idx;
}
}
function find_max(arr, rem) {
var max = 0;
var idx = -1;
for(var i=0; i<arr.length; i++) {
if (i == rem) continue;
if (max < arr[i]) {
max = arr[i];
idx = i;
}
}
return [max, idx]
}
return Math.max(...land[land.length - 1]);
}