
-Code
import java.util.*;
import java.io.*;
public class BOJ11048 {
public static void main(String[] args) throws IOException {
BufferedReader br =
new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
int n = Integer.parseInt(st.nextToken());
int m = Integer.parseInt(st.nextToken());
int[][] miro = new int[n + 1][m + 1];
for (int row = 1; row <= n; row++) {
st = new StringTokenizer(br.readLine());
for (int col = 1; col <= m; col++) {
miro[row][col] = Integer.parseInt(st.nextToken());
}
}
// 3방향으로 확인하나 위와 왼쪽만 확인하면
// 왼쪽위도 확인과 같음
for (int row = 1; row <= n; row++) {
for (int col = 1; col <= m; col++) {
int max = Math.max(miro[row - 1][col], miro[row][col - 1]);
miro[row][col] += max;
}
}
System.out.println(miro[n][m]);
}
}
처음에 3방향 검사와 if문을 통해 범위 계산을 해서 맞았으나 배열 범위를 1씩 늘리고 위와 왼쪽만 검사하면 왼쪽 위 대각선 방향은 검사 안해도 된다는 것을 알고 다시 수정해 보았습니다.
'Beakjoon&프로그래머스 > Java' 카테고리의 다른 글
| [백준/Java] 1003번 피보나치 함수 (0) | 2026.01.08 |
|---|---|
| [백준/Java] 2775번 부녀회장이 될테야 (0) | 2026.01.08 |
| [프로그래머스/Java] 단어 변환 (0) | 2026.01.08 |
| [프로그래머스/Java] 네트워크 (0) | 2026.01.08 |
| [프로그래머스/Java] 완주하지 못한 선수 (0) | 2026.01.08 |