-
[프로그래머스] 정수 삼각형ALGORITHM/PROGRAMMERS 2021. 8. 30. 15:16
https://programmers.co.kr/learn/courses/30/lessons/43105
2021-08-30
1234567891011121314151617class Solution {public int solution(int[][] triangle) {int answer = 0;int[][] dp = new int[triangle.length][triangle.length];dp[0][0] = triangle[0][0];for(int i = 0; i < triangle.length - 1; i++) {for(int j = 0; j < triangle[i].length; j++) {dp[i+1][j] = Math.max(triangle[i+1][j] + dp[i][j], dp[i+1][j]);dp[i+1][j+1] = Math.max(triangle[i+1][j+1] + dp[i][j], dp[i+1][j+1]);}}for(int i = 0; i < dp[dp.length-1].length; i++) answer = Math.max(answer, dp[dp.length-1][i]);return answer;}}cs #문제풀이
꼭대기에서부터 계산할 때, 다음 트리의 본인 인덱스와 본인 인덱스+1에 영향을 끼치게 된다.
그리고, 그 다음 트리에는 두 가지 이상의 값이 들어올 수 있으므로, max값을 체크해줘야한다.
'ALGORITHM > PROGRAMMERS' 카테고리의 다른 글
[프로그래머스] 표 편집 (2021 카카오 채용연계형 인턴십) (0) 2021.09.01 [프로그래머스] 순위 (0) 2021.08.30 [프로그래머스] 가장 먼 노드 (0) 2021.08.30 [프로그래머스] 위클리 챌린지 5주차 (0) 2021.08.30 [프로그래머스] 입국심사 (0) 2021.08.30