백준 1932 - 정수 삼각형

2020. 4. 8. 09:33·Algorithms/BOJ

https://www.acmicpc.net/problem/1932

 

1932번: 정수 삼각형

문제 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 위 그림은 크기가 5인 정수 삼각형의 한 모습이다. 맨 위층 7부터 시작해서 아래에 있는 수 중 하나를 선택하여 아래층으로 내려올 때, 이제까지 선택된 수의 합이 최대가 되는 경로를 구하는 프로그램을 작성하라. 아래층에 있는 수는 현재 층에서 선택된 수의 대각선 왼쪽 또는 대각선 오른쪽에 있는 것 중에서만 선택할 수 있다. 삼각형의 크기는 1 이상 500 이하이다. 삼각형을 이루고 있는 각 수는

www.acmicpc.net

문제 설명


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

위 그림은 크기가 5인 정수 삼각형의 한 모습이다. 맨 위층 7부터 시작해서 아래에 있는 수 중 하나를 선택하여 아래층으로 내려올 때,

이제까지 선택된 수의 합이 최대가 되는 경로를 구하는 프로그램을 작성하라.

아래층에 있는 수는 현재 층에서 선택된 수의 대각선 왼쪽 또는 대각선 오른쪽에 있는 것 중에서만 선택할 수 있다.

 

 

접근 방법


DP 로 접근하며, 각층에서 최대가 되는 숫자를 저장해 나간다. 이후 마지막 자식 트리에서 최대값을 찾으면 된다.

 

 

코드


#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int n,count=0;
int tri[501][501];
int maxi[501][501];
int main(){
    cin>>n;
    for(int i=0;i<n;i++){
        for(int j=0;j<=i;j++){
            cin>>tri[i][j];
        }
    }
    maxi[0][0]=tri[0][0];
    for(int i=1;i<n;i++){
        for(int j=0;j<=i;j++){
            if(j==0) maxi[i][j]=maxi[i-1][j]+tri[i][j];
            else if(j==i) maxi[i][j]=maxi[i-1][j-1]+tri[i][j];
            else maxi[i][j]=max(maxi[i-1][j-1],maxi[i-1][j])+tri[i][j];
        }
    }
    sort(maxi[n-1],maxi[n-1]+n);
    cout<<maxi[n-1][n-1];
    return 0;
}

funny algorithm T.T;;;

'Algorithms > BOJ' 카테고리의 다른 글

백준 11053 - 가장 긴 증가하는 부분 수열  (0) 2020.04.08
백준 1912 - 연속합  (0) 2020.04.08
백준 1157 - 단어 공부  (0) 2020.04.08
백준 2908 - 상수  (1) 2020.04.08
백준 10809 - 알파벳 찾기  (0) 2020.04.08
'Algorithms/BOJ' 카테고리의 다른 글
  • 백준 11053 - 가장 긴 증가하는 부분 수열
  • 백준 1912 - 연속합
  • 백준 1157 - 단어 공부
  • 백준 2908 - 상수
dev.wookii
dev.wookii
Effort Maketh Happiness
  • dev.wookii
    습관처럼
    dev.wookii
  • 전체
    오늘
    어제
    • 분류 전체보기 (295)
      • Language (35)
        • python (13)
        • C++ (22)
      • Kaggle (4)
      • Algorithms (112)
        • BOJ (58)
        • programmers (43)
        • SWExpertAcademy (2)
      • Certification (38)
        • Adsp (0)
        • Sqld (28)
        • 정처기 (9)
        • 빅데이터 분석기사 (0)
      • Data Analysis & ML (6)
      • 금융 & 디지털 (65)
      • CS (32)
        • DB (2)
        • SE (3)
        • Web&JSP (1)
        • Network (11)
        • OS (2)
        • Linux&Unix (6)
        • Server (1)
        • UX,UI (1)
        • 보안 (5)
      • 기타 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    2020 KAKAO
    programmers
    Ebay korea #coding test
    funny algorithms
    시뮬레이션
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
dev.wookii
백준 1932 - 정수 삼각형
상단으로

티스토리툴바