[프로그래머스] 땅따먹기 - JavaScript

이수동·2022년 6월 3일
1
post-thumbnail

프로그래머스 Level 2 - 땅따먹기


📌 생각한 풀이 방법

  1. 다음 열을 넘어갈 때, 가능한 최대의 경우를 다음 열에 더하며 연산을 이어간다.
  2. 마지막 열에서 최대 값을 반환한다.

📌 풀이

function solution(land) {
  for (let i = 1; i < land.length; i++) {
    // 다음 열을 넘어갈 때
    let currentValue = land[i - 1];
    for (let j = 0; j < 4; j++) {
      let filterValue = currentValue.filter((_, index) => index !== j);
      let maxValue = Math.max(...filterValue); // 가능한 최대의 경우
      land[i][j] += maxValue; // 다음 열에 더하며 연산
    }
  }

  return Math.max(...land[land.length - 1]); // 마지막 열에서 최대 값을 반환
}
profile
기록을 통한 성장하기 🧐

0개의 댓글