Skip to content

Conversation

@jjuchan
Copy link
Collaborator

@jjuchan jjuchan commented Jul 14, 2025

📌 문제

숫자가 들어간 피라미드 형태의 삼각형이 주어진다.
꼭대기부터 바닥까지 인접한 숫자를 따라 내려가면서 만들 수 있는 최대 합을 구하라.
image


🤞 문제 개요

  • 숫자가 들어간 피라미드 형태의 2차원 배열(삼각형)이 주어진다.
  • 꼭대기부터 시작해 인접한 숫자들 중 하나씩 선택하며 아래로 내려간다.
  • 선택한 숫자들의 합 중 가장 큰 값을 구하는 문제이다.
  • 삼각형의 각 행 i에는 i+1개의 숫자가 있다.

📝 풀이 요약

  • 각 위치까지의 최대 합을 저장할 DP 배열을 선언한다.
  • 첫 번째 행(dp[0][0])은 초기값으로 triangle[0][0]을 넣는다.
  • 이후 행부터는 다음 규칙으로 값을 채운다:
    1. 맨 왼쪽 값(dp[i][0])은 바로 위 행의 같은 인덱스(dp[i-1][0])에서만 내려올 수 있다.
    2. 맨 오른쪽 값(dp[i][i])은 바로 위 행의 오른쪽 대각선 왼쪽(dp[i-1][i-1])에서만 내려올 수 있다.
    3. 그 외 중간 값(dp[i][j])은 바로 위(dp[i-1][j]) 또는 왼쪽 대각선(dp[i-1][j-1]) 중 큰 값에 현재 triangle[i][j]를 더한다.
  • 마지막 행(dp[n-1])에서 최대 값을 찾아 반환한다.

😁 결과

image

@Yoepee Yoepee self-requested a review July 15, 2025 12:13
Copy link
Member

@Yoepee Yoepee left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!
노션에 bottom-up 방식 코드 적어놨습니다!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants