본문 바로가기
Algorithm/Programmers

[Programmers/Lv2] 땅따먹기 - Java

by 광진구뚝배기 2021. 8. 6.

알고리즘 문제 풀이 / 프로그래머스 (programmers)  - 땅따먹기

 

 

 

문제 링크

 

https://programmers.co.kr/learn/courses/30/lessons/12913

 

코딩테스트 연습 - 땅따먹기

땅따먹기 게임을 하려고 합니다. 땅따먹기 게임의 땅(land)은 총 N행 4열로 이루어져 있고, 모든 칸에는 점수가 쓰여 있습니다. 1행부터 땅을 밟으며 한 행씩 내려올 때, 각 행의 4칸 중 한 칸만 밟

programmers.co.kr

 

 

문제 풀이

 

 

 

 

 

 

public static int solution(int[][] land) {
	int answer = 0;
	int k = land.length;
		
	for(int i = 0; i < k-1; i++) {
		land[i+1][0] += max(land[i][1], land[i][2], land[i][3]);
		land[i+1][1] += max(land[i][0], land[i][2], land[i][3]);
		land[i+1][2] += max(land[i][0], land[i][1], land[i][3]);
		land[i+1][3] += max(land[i][0], land[i][1], land[i][2]);
	}
	Arrays.sort(land[k-1]); 
		
	return land[k-1][3];
}

public static int max(int a, int b, int c) {
	return Math.max(Math.max(a, b), c);
}
반응형

댓글