자판 최대합

신유빈·2021년 9월 3일
0

항해99

목록 보기
28/37

자판 최대합
55 격자판에 아래롸 같이 숫자가 적혀있습니다.

N
N의 격자판이 주어지면 각 행의 합, 각 열의 합, 두 대각선의 합 중 가 장 큰 합을 출력합니다.

▣ 입력설명
첫 줄에 자연수 N이 주어진다.(1<=N<=50)
두 번째 줄부터 N줄에 걸쳐 각 줄에 N개의 자연수가 주어진다. 각 자연수는 100을 넘지 않는다.

▣ 출력설명
최대합을 출력합니다.

▣ 입력예제 1
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

▣ 출력예제 1
155

function solution(arr){
let answer= Number.MIN_SAFE_INTEGER;
let n = arr.length
let sum1 = sum2 = 0
for(let i=0;i<n;i++){
sum1 = sum2 = 0
	for(let j=0; j<n; j++){
    	sum1+= arr[i][j] //행의 합
        sum2+= arr[j][i] //열의 합
    }
    answer = Math.max(answer,sum1,sum2)
}
sum1 = sum2 = 0
for(let i=0;i<n;i++){
	sum1+=arr[i][i] //대각선의 합
    sum2=arr[i][n-i-1] //대각선의 합
}
answer = Math.max(answer, sum1, sum2 )
    return answer
    }
    let arr=[[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]];
console.log(solution(arr));

for문을 돌려서 Math.max()로 최대값을 구했다

Math.max()

입력값으로 받은 0개 이상의 숫자 중 가장 큰 숫자를 반환한다

profile
안녕하세요

0개의 댓글

관련 채용 정보