정수 삼각형

면접 대비

시간 제한2초메모리 제한128 MB

요약
최대 500행 크기의 정수 삼각형에서 위에서 아래로 대각선으로 이동하며 얻는 최대 경로 합을 구합니다.
난이도

쉬움10점 중 3점

유형
동적 계획법, 행렬
정답자
아직 제출이 없습니다

문제

        7
      3   8
    8   1   0
  2   7   4   4
4   5   2   6   5

위 그림은 크기가 5인 정수 삼각형의 한 모습이다.

맨 위의 수 7에서 시작해 한 층씩 아래로 내려간다. 내려갈 때는 현재 선택한 수의 바로 아래 대각선 왼쪽 또는 대각선 오른쪽에 있는 수 중 하나만 선택할 수 있다. 맨 아래층까지 내려가며 선택한 수들의 합이 최대가 되도록 할 때, 그 최댓값을 구하는 프로그램을 작성하라.

삼각형의 크기는 1 이상 500 이하이다. 삼각형을 이루는 각 수는 0 이상 9999 이하의 정수이다.

입력

첫째 줄에 삼각형의 크기 n(1 <= n <= 500)이 주어진다. 둘째 줄부터 n개의 줄에는 위층부터 아래층까지 정수 삼각형이 주어진다. i번째 줄에는 i개의 정수가 공백으로 구분되어 주어진다.

출력

맨 위층에서 맨 아래층까지 내려가는 경로 중 선택한 수들의 합이 최대가 되는 값을 출력한다.

예제1

  1. 예제 1

    입력
    5
    7
    3 8
    8 1 0
    2 7 4 4
    4 5 2 6 5
    
    예상 출력
    30