본문 바로가기

프로그래머스(Java)/Level 0

[프로그래머스] 정사각형으로 만들기

728x90

코드 힌트

  1. 최대 크기 계산하기:
    • 주어진 2차원 배열 arr의 행과 열 중 더 큰 값을 n으로 설정합니다. 이는 결과 배열의 크기를 결정하기 위함입니다.
  2. 새로운 배열 초기화:
    • int[][] result = new int[n][n];를 사용하여 n x n 크기의 새로운 2차원 배열을 생성합니다. 이 배열의 기본값은 자동으로 0으로 초기화됩니다. 배열이 생성되면 모든 요소는 기본값인 0으로 채워집니다.
  3. 배열 복사하기:
    • 기존 배열의 원소를 새 배열에 복사합니다. 이때 주어진 배열의 크기와 새로운 배열의 크기 차이를 고려하여, 주어진 배열의 범위 내에서만 원소를 복사합니다.
  4. 결과 배열 반환하기:
    • 모든 복사 작업이 끝나면 새로운 배열을 반환합니다. 새 배열은 주어진 배열의 원소를 포함하며, 나머지 부분은 기본값인 0으로 채워져 있습니다.

 


정답은 더보기 클릭

더보기
class Solution {
    public int[][] solution(int[][] arr) {
        // 배열의 행 수와 열 수 중 더 큰 값을 찾습니다.
        int n = Math.max(arr.length, arr[0].length);
        
        // n x n 크기의 새로운 2차원 배열을 생성합니다. 기본값은 0입니다.
        int[][] result = new int[n][n];
        
        // 주어진 배열의 각 원소를 새로운 배열로 복사합니다.
        for (int i = 0; i < arr.length; i++) {
            for (int j = 0; j < arr[i].length; j++) {
                result[i][j] = arr[i][j];
            }
        }
        
        // 결과 배열을 반환합니다.
        return result;
    }
}
728x90