코린이의 소소한 공부노트

[LeetCode/Easy] 566. Reshape the Matrix 본문

코딩테스트 풀이/JAVA

[LeetCode/Easy] 566. Reshape the Matrix

무지맘 2022. 12. 4. 23:42

1. Input

1) mnint 2차원 배열 mat

2) 정수 r

3) 정수 c

 

2. Output

1) matrc열로 재배열한 2차원 배열

 

3. Constraint

1) m == mat.length

2) n == mat[i].length

3) 1 <= m, n <= 100

4) -1000 <= mat[i][j] <= 1000

5) 1 <= r, c <= 300

 

4. Example

Input: mat={{1,2},{3,4}}, r=1, c=4 -> Output={{1,2,3,4}}

 

5. Code

1) 첫 코드(2022/07/24)

int elements = mat.length * mat[0].length;
if(elements!=r*c)
    return mat;

int[][] reshape = new int[r][c];
int ri=0, ci=0;
for(int i=0 ; i<mat.length ; i++)
    for(int j=0 ; j<mat[0].length ; j++){
        reshape[ri][ci] = mat[i][j];
        ci++;
        if(ci==c){
            ri++; ci = 0;
        }
    }

return reshape;