코딩테스트/프로그래머스

[Lv.0] 특별한 이차원 배열1

민톨이 2024. 8. 2. 22:59
728x90

📋 문제

정수 n이 매개변수로 주어질 때, 다음과 같은 n × n 크기의 이차원 배열 arr를 return 하는 solution 함수를 작성해 주세요.

arr[i][j] (0 ≤ i, j < n)의 값은 i = j라면 1, 아니라면 0입니다.

 

📋 입출력 예시

 

 

📋 풀이

class Solution {
    public int[][] solution(int n) {
        // 배열 크기 선언
        int[][] answer = new int[n][n];
        // 행index == 열index => 1로 변경
        for(int i=0; i<n;i++){
            answer[i][i] = 1;
        }
        return answer;
    }
}

 

- 배열 크기를 선언한다 

- 입출력 예시를 보니 행 index와 열 index가 같으면 (ex)0행0열/ 1행1열/ 2행2열) 그 인덱스에 해당하는 값을 1 로 변경시켜야함

- 반복문 사용 

 

📋 예시

예시
만약 n이 3이라면, for 루프는 다음과 같이 동작:

i = 0일 때: answer[0][0] = 1;
i = 1일 때: answer[1][1] = 1;
i = 2일 때: answer[2][2] = 1;

 

❗️ answer[i][i]는 대각선 값 (행 인덱스 = 열 인덱스)를 나타냄

❗️ int 배열은 크기 지정해주면 따로 선언하지 않을 시 자동으로 0 들어가니까 대각선 값 1 처리만 해주면 됨

'코딩테스트 > 프로그래머스' 카테고리의 다른 글

[Lv.1] 짝수와 홀수  (0) 2024.08.03
[Lv.0] 특별한 이차원 배열2  (0) 2024.08.02
[Lv.0] 주사위 게임2  (2) 2024.07.25
[Lv.0] 주사위 게임1  (1) 2024.07.24
[Lv.0] rny_string  (0) 2024.07.24