No Rules Rules

정수 삼각형 (feat. 백준, 1932번) 본문

생활/코테

정수 삼각형 (feat. 백준, 1932번)

개발하는 완두콩 2022. 7. 27. 22:41
728x90
반응형

정수 삼각형
https://www.acmicpc.net/problem/1932

 

1932번: 정수 삼각형

첫째 줄에 삼각형의 크기 n(1 ≤ n ≤ 500)이 주어지고, 둘째 줄부터 n+1번째 줄까지 정수 삼각형이 주어진다.

www.acmicpc.net

// woohyeon.kim
// https://www.acmicpc.net/problem/1932
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
	ios::sync_with_stdio(false), cin.tie(), cout.tie();
	register int N, arr[500][500];
	cin >> N;
	for (register int ix = 0; ix < N; ++ix)
		for (register int iy = 0; iy <= ix; ++iy)
			cin >> arr[ix][iy];

	for (register int ix = 1, a, b; ix < N; ++ix)
		for (register int iy = 0; iy <= ix; ++iy){
			// 내 기준 좌측 위
			if (iy == 0)			a = 0;
			else					a = arr[ix - 1][iy - 1];
			// 내 기준 우측 위
			if (iy == ix)			b = 0;
			else					b = arr[ix - 1][iy];
			// 현재 나의 값 + 좌/우 중 큰값
			arr[ix][iy] = arr[ix][iy] + max(a, b);
		}
	cout << *max_element(&arr[N - 1][0], &arr[N - 1][N]) << endl;
	return 0;
}
// *&)*@*
  1. 좌측과 우측 중 큰값을 선택하여 현재 나의 값에 더해줍니다.
728x90
반응형
Comments