문제
풀이
import java.util.Arrays;
class Solution {
public int[][] solution(int[][] arr) {
int rows = arr.length;
int cols = 0;
for(int[] row : arr) {
cols = Math.max(cols, row.length);
}
int[][] newArr = new int[Math.max(rows, cols)][Math.max(rows, cols)];
for(int i = 0; i < newArr.length; i++) {
if(i < arr.length) {
for(int j = 0; j < newArr[i].length; j++) {
if(j < arr[i].length) {
newArr[i][j] = arr[i][j];
} else {
newArr[i][j] = 0;
}
}
} else {
Arrays.fill(newArr[i], 0);
}
}
return newArr;
}
}
class Solution {
public int[][] solution(int[][] arr) {
int max = Math.max(arr.length, arr[0].length);
int[][] array = new int[max][max];
for (int i = 0; i < arr.length; i++) {
System.arraycopy(arr[i], 0, array[i], 0, arr[0].length);
}
return array;
}
}
class Solution {
public int[][] solution(int[][] arr) {
int max = Math.max(arr.length, arr[0].length);
int[][] result = new int[max][max];
for(int i = 0; i < arr.length; i++) {
for(int j = 0; j < arr[0].length; j++) {
result[i][j] = arr[i][j];
}
}
return result;
}
}
출처
https://school.programmers.co.kr/learn/courses/30/lessons/181830
'Algorithm > Programmers' 카테고리의 다른 글
[Programmers] Lv.0 / 옹알이 (1) / Java (0) | 2024.03.18 |
---|---|
[Programmers] Lv.0 / 이차원 배열 대각선 순회하기 / Java (0) | 2024.03.15 |
[Programmers] Lv.0 / 특별한 이차원 배열 2 / Java (0) | 2024.03.14 |
[Programmers] Lv.0 / 정수를 나선형으로 배치하기 / Java (0) | 2024.03.14 |
[Programmers] Lv.0 / 특별한 이차원 배열 1 / Java (0) | 2024.03.13 |
댓글