본문 바로가기
Algorithm/프로그래머스 고득점 Kit

[동적 계획법] 정수 삼각형 - Java코드

https://programmers.co.kr/learn/courses/30/lessons/43105

 

코딩테스트 연습 - 정수 삼각형

[[7], [3, 8], [8, 1, 0], [2, 7, 4, 4], [4, 5, 2, 6, 5]] 30

programmers.co.kr

 

 

문제

 

 

풀이

아래에서 부터 순회하면서,

상위노드에 값을 더해주면서 메모이제이션 한다.

class Solution {
    public int solution(int[][] triangle) {
	 	for(int i=triangle.length-2;i>=0;i--) {
	 		for(int j=0;j<triangle[i].length;j++) {
	 			triangle[i][j] += Math.max(triangle[i+1][j],triangle[i+1][j+1]);	
	 		}
	 	}
        return triangle[0][0];
    }
}