728x90
반응형
728x90
배열의 크기 입력값 N이 주어진다.
배열의 값을 입력한 후,
행, 열, 대각선, 역대각선의 합을 구해서 최대값을 구해야 한다.
반응형
행 : arr[j][i]
열 : arr[i][j]
대각선 : arr[i][i]
역대각선 : arr[i][n-1-i]
입력값이 다음과 같이 주어질 때,
5
10 13 10 12 15
12 39 30 23 11
11 25 50 53 15
19 27 29 37 27
19 13 30 13 19
다음과 같은 결과가 나와야 한다.
155
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Main m = new Main();
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[][] arr = new int[n][n];
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
arr[i][j] = sc.nextInt();
}
}
System.out.println(m.solution(n, arr));
}
public static int solution(int n, int[][] arr) {
int answer = Integer.MIN_VALUE;
int dia = 0, rev = 0;
for (int i = 0; i < n; i++) {
int row = 0, col = 0;
for (int j = 0; j < n; j++) {
row += arr[j][i];
col += arr[i][j];
}
dia += arr[i][i];
rev += arr[i][n-1-i];
answer = Math.max(answer, Math.max(row, col));
}
answer = Math.max(answer, Math.max(dia, rev));
return answer;
}
}
728x90
반응형
'알고리즘' 카테고리의 다른 글
[알고리즘/java] 조합을 구하는 코드 공식 (0) | 2021.11.30 |
---|---|
[알고리즘/java] 에라스토테네스의 체 - int형 배열 (0) | 2021.09.06 |
[알고리즘/java] 알맞은 팰린드롬(회문) (0) | 2021.09.06 |
[알고리즘/java] 중복된 문자 제거하기 (0) | 2021.09.06 |
[알고리즘/java] 특정 문자만 뒤집기를 할 때 (0) | 2021.09.06 |
댓글