728x90
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
풀이
어제 푼 문제와 비슷한 문제였다.
DP Bottom-up방식으로 문제를 해결했다.
재귀로도 해결할 수 있겠지만 이 방식이 가장 효율적인 듯 하다.
전체코드
import java.io.*;
import java.util.*;
class Solution {
int solution(int[][] land) {
int N = land.length;
int R = 4;
int idx = 0;
for(int i=N-1; i>=1; i--){
for(int j=0; j<4; j++){
int max = 0;
for(int k=0; k<4; k++){
if(j!=k){
max = Math.max(land[i][k], max);
}
}
land[i-1][j] += max;
}
}
int answer = Math.max(land[0][3] ,Math.max(land[0][2],Math.max(land[0][0], land[0][1])));
return answer;
}
}
728x90
'코딩테스트 > Algorithm' 카테고리의 다른 글
[BOJ] 2870: 수학숙제 (JAVA) (0) | 2024.07.20 |
---|---|
[Programmers] 2 x n 타일링 (JAVA) (0) | 2024.07.18 |
[Programmers] 정수 삼각형 (JAVA) (0) | 2024.07.16 |
[BOJ] 25631: 마트료시카 합치기 (JAVA) (0) | 2024.07.14 |
[BOJ] 25325: 학생 인기도 측정 (JAVA) (0) | 2024.07.13 |