거인의 코딩일지
[Lv.0_Java] 정사각형으로 만들기 본문
728x90
class Solution {
public int[][] solution(int[][] arr) {
int x = arr.length> arr[0].length ? arr.length:arr[0].length;
int y = arr.length> arr[0].length ? arr.length:arr[0].length;
int[][] answer = new int [x][y];
for(int i = 0; i < arr.length; i++){
for(int j = 0; j < arr[0].length; j++){
answer[i][j] = arr[i][j];
}
}
return answer;
}
}
변수 x y 값을 만든 후 삼항연산자로 x와 y 의 길이를 더 큰 값으로 통일 시킨 뒤 answer 의 길이에다가 할당해주고 for 문을 활용하여 arr [i][j] 값을 가져와서 return 해주었다.
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;
}
}
System.arraycopy <- arr[i] 줄을 0번째부터 array[i] 줄의 0번째칸으로 arr[0].lenght 길이만큼 복사해서 넣는다
다른사람들 풀이 보는게 은근 재밌다 나랑 같은 결과를 도출하면서 다른 코드를 작성하는게 흥미롭다!!
728x90
'알고리즘테스트 > Programmers' 카테고리의 다른 글
[Lv.1_Java] 두 개 뽑아서 더하기 (0) | 2023.08.17 |
---|---|
[Lv.1_Java] 같은 숫자는 싫어 (0) | 2023.08.17 |
[Lv.0_Java] 커피심부름 (0) | 2023.08.17 |
[Lv.0_Java] 1로 만들기 (0) | 2023.08.17 |
[Lv.0_Java] 날짜 비교하기 (0) | 2023.08.17 |