인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

 HyejinUm님의 프로필 이미지
HyejinUm

작성한 질문수

자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)

6. 격자판 최대합

격자판 최대합: 18번째 줄에 최대값 비교할때 answer은 왜 포함하는건가요?

작성

·

272

·

수정됨

0

 Math.max(sum1, sum2);

대각선 구할 때는 이미 앤서에 행렬의 합 중 최대값이 들어가있어서 앤서를 포함하여 max값을 찾는 것 같은데,

18번째 줄에 최초 max를 구할 때는 왜 앤서를 포함해서 최대값을 구하는건지 궁금합니다.

그리고 앤서의 초기값을

 

let answer=0

 

으로 줘도 상관없나요?

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

answer=Math.max(answer, sum1, sum2);

i행의 합인 sum1, i열의 합인 sum2, 그리고 기존 값 answer 셋 중에서 가장 큰 값을 answer에 저장하는 것입니다. answer값이

i = 0일때 0행의 합(sum1)과 0열의 합(sum2), 아주 작은 값으로 초기화된 answer 이 셋 중 가장 큰 값을 answer에 저장합니다.

i = 1일때는 1행의 합(sum1)과 1열의 합(sum2) 와 기존 answer(0행의 합, 0열의 합 중 큰값) 이 셋 중 가장 큰 값으로 answer 값이 저장됩니다.

i = 2일때는 어떻게 되는 건지 한 번 생각해보세요

격자판의 값들이 자연수이니 answer = 0으로 초기화해도 상관없습니다.

 HyejinUm님의 프로필 이미지
HyejinUm

작성한 질문수

질문하기