-
[Algorithm] 프로그래머스 땅따먹기 - C++, DP쾌락없는 책임 (공부)/알고리즘 문제풀이 2022. 2. 23. 17:31반응형
#include <iostream> #include <vector> #include <algorithm> using namespace std; int solution(vector<vector<int> > land) { int answer = 0; int totalSize = land.size()-1; for(unsigned i = 0; i < totalSize; i++){ int land0 = land[i][0]; int land1 = land[i][1]; int land2 = land[i][2]; int land3 = land[i][3]; land[i+1][0] += max(land1, max(land2, land3)); land[i+1][1] += max(land0, max(land2, land3)); land[i+1][2] += max(land0, max(land1, land3)); land[i+1][3] += max(land0, max(land1, land2)); } answer = max(max(land[totalSize][0], land[totalSize][1]), max(land[totalSize][2], land[totalSize][3])); return answer; }
원래는 따로 함수로 빼고 dp를 할려 하다가 그냥 생으로 배열에 dp를 넣어버리니 풀이가 되었습니다. 첫 실수가 하나 있었다면 for문에 land.size()를 넣었다가 [i+1] 인덱스를 참조하고 있다는 사실을 까먹어 오류가 나오긴 했습니다.
반응형'쾌락없는 책임 (공부) > 알고리즘 문제풀이' 카테고리의 다른 글
[Algorithm] 프로그래머스 멀쩡한 사각형 - C++, GCD (0) 2022.02.24 [Algorithm] 프로그래머스 최솟값 만들기 - C++ (0) 2022.02.23 [Algorithm] 프로그래머스 섬 연결하기 - C++, 크루스칼 (0) 2022.02.23 [Algorithm] 프로그래머스 2 x n 타일링, C++, DP (0) 2022.02.23 [Algorithm] 프로그래머스 가장 먼 노드 - C++, BFS (0) 2022.02.23