본문 바로가기
자료구조&알고리즘/코딩테스트 문제연습

[코드트리 챌린지] 2주차 - (DP)정수 사각형 최대 합 (JS)

by 복숭아 우유씨 2023. 9. 18.

1. 진단 결과

2. 학습 내용

문제 

https://www.codetree.ai/missions/2/problems/maximum-sum-path-in-square?&utm_source=clipboard&utm_medium=text 

 

나의 풀이 (JS)

const fs = require('fs')
let input = fs.readFileSync('/dev/stdin').toString().trim().split('\n')

const n = +input.shift()
input = input.map(e => e.split(' ').map(Number))

const dp = Array.from({length : n }, () => Array.from({length: n}, () => 0));

function initialize() {
    dp[0][0] = input[0][0];

    for(let i = 1; i < n; i++) {
        dp[i][0] = dp[i - 1][0] + input[i][0];
    }
    
    for(let i = 1; i < n; i++) {
        dp[0][i] = dp[0][i - 1] + input[0][i];
    }
    
}

initialize()

for(let i = 1; i < n; i++) {
    for(let j = 1; j < n; j++) {
        dp[i][j] = Math.max(dp[i - 1][j], dp[i][j - 1]) + input[i][j]
    }
}

console.log(dp[n - 1][n -1])

 

 

댓글