코린이의 소소한 공부노트

[LeetCode/Easy] 2643. Row With Maximum Ones 본문

코딩테스트 풀이/JAVA

[LeetCode/Easy] 2643. Row With Maximum Ones

무지맘 2023. 5. 8. 16:51

1. Input

1) int[][] mat

 

2. Output

1) mat의 각 행별로 1의 개수를 세어서 1이 가장 많은 행의 번호와 1의 개수를 차례대로 담은 배열을 반환

- 1의 개수가 가장 많은 행이 여러개라면, 가장 작은 행번호를 반환

 

3. Constraint

1) m == mat.length

2) n == mat[i].length

3) 1 <= m, n <= 100

4) mat[i][j]0 또는 1이다.

 

4. Example

Input: mat = [[0,1],[1,0]] -> Output: [0,1]

설명: 0행과 1행 모두 11개씩 갖고 있지만, 행번호는 0이 작으므로 [0,1]을 반환한다.

 

5. Code

1) 첫 코드(2023/05/08)

class Solution {
    public int[] rowAndMaximumOnes(int[][] mat) {
        int[] answer = new int[2];
        int max = -1;
        for(int i=0 ; i<mat.length ; i++){
            int sum = 0;
            for(int j=0 ; j<mat[i].length ; j++)
                sum += mat[i][j];
            if(sum>max){
                answer[0] = i;
                answer[1] = sum;
                max = sum;
            }
        }
        return answer;
    }
}