#include <iostream> #include <vector> #include <algorithm> using namespace std; int solution(vector<vector<int>> land) { int sum[100000][4] = {land[0][0], land[0][1], land[0][2], land[0][3]}; for(int i = 1; i < land.size(); i++) { sum[i][0] = max({sum[i-1][1]+land[i][0], sum[i-1][2]+land[i][0], sum[i-1][3]+land[i][0]}); sum[i][1] = max({sum[i-1][0]+land[i][1], sum[i-1][2]+land[i][1], sum[i-1][3]+land[i][1]}); sum[i][2] = max({sum[i-1][0]+land[i][2], sum[i-1][1]+land[i][2], sum[i-1][3]+land[i][2]}); sum[i][3] = max({sum[i-1][0]+land[i][3], sum[i-1][1]+land[i][3], sum[i-1][2]+land[i][3]}); } int Max = max({sum[land.size()-1][0], sum[land.size()-1][1], sum[land.size()-1][2], sum[land.size()-1][3]}); return Max; } | cs |
'Programmers > Level 2' 카테고리의 다른 글
[프로그래머스 2] 최댓값과 최솟값 (C/C++) (0) | 2019.10.28 |
---|---|
[프로그래머스 2] 카카오 프렌즈 컬러링북 (C/C++) (1) | 2019.10.26 |
[프로그래머스 2] 숫자의 표현 (C/C++) (★) (0) | 2019.10.25 |
[프로그래머스 2] 다음 큰 숫자 (C/C++) (0) | 2019.10.25 |
[프로그래머스 2] 전화번호 목록 (C/C++) (0) | 2019.10.25 |