PS/프로그래머스
[JS][Lv3][DP] 정수삼각형
returnzero
2023. 9. 24. 17:28
function solution(triangle) {
let ansArr = triangle.shift()
triangle.forEach(e => {
ansArr = sumOfArr(ansArr, e)
})
return Math.max(...ansArr)
}
// [10,15] [8,1,0] [18,16,15]
// [18,16,15] [2,7,4,4]
function sumOfArr(arr1, arr2) {
let ans = []
ans.push(arr1[0] + arr2[0])
for (let i = 1; i < arr2.length - 1; i++) {
ans.push(Math.max(arr2[i] + arr1[i - 1], arr2[i] + arr1[i]))
}
ans.push(arr1[arr1.length - 1] + arr2[arr2.length - 1])
return ans
}
삼각형의 꼭대기부터 아래로 내려올 때 반복적인 무언가가 있을거라고 생각했다.
그래서 두개의 array 를 받아서 array를 return 하는 값이 나오면 좋겠다고 생각하고 접근했다.