2차원 정수 배열 grid가 주어져요. 각 행의 합을 구해, 합이 가장 큰 행의 인덱스를 반환해요.
합이 같은 행이 여러 개면 인덱스가 가장 작은 행을 반환해요.
grid[i][j] 에서 i는 행, j는 열이에요. 바깥 반복문이 행, 안쪽 반복문이 열이라는 순서에 익숙해지는 게 이 문제의 목적이에요.
예시
예시 1
예시 2
예시 3
제한 사항
- 1 ≤ grid.length ≤ 500
- 1 ≤ grid[i].length ≤ 500
- 모든 행의 길이는 같아요.
- -10^6 ≤ grid[i][j] ≤ 10^6
행마다 합을 구해 지금까지의 최댓값과 비교하면 돼요. 같을 때 갱신하지 않아야 앞선 인덱스가 남아요 —
> 와 >= 중 어느 쪽을 쓸지가 이 문제의 함정이에요.javascriptCopy codefunction maxRowSum(grid) {let best = 0;let bestSum = -Infinity;for (let i = 0; i < grid.length; i++) {let sum = 0;for (let j = 0; j < grid[i].length; j++) sum += grid[i][j];if (sum > bestSum) {bestSum = sum;best = i;}}return best;}
이전 문제배열의 합과 최댓값
다음 문제구간 합 구하기
예시 테스트만 실행 (Cmd/Ctrl+Enter)
숨김 테스트까지 채점 (Cmd/Ctrl+Shift+Enter)
에디터를 불러오고 있어요…
코드를 작성하고Ctrl↵를 눌러 예시 테스트를 확인해 보세요.