본문 바로가기

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

[프로그래머스] 특별한 이차원 배열2

728x90
  1. 2중 for문 사용하기
    for (int i = 0; i < arr.length; i++) {
        for (int j = 0; j < arr.length; j++) {
            ...
        }
    }


  2. arr[i][j] 와 arr[j][i] 비교하기
  3. 다르다면 false 또는 0을 반환하기

 

이 문제의 목표는 주어진 2차원 배열이 대칭인지 확인하는 것입니다. 대칭이란, 배열의 요소 arr[i][j]와 arr[j][i]가 항상 동일해야 함을 의미합니다. 이 특성을 확인하기 위해 2중 for문을 사용하여 모든 요소를 순회하면서 비교합니다.

약 한 쌍이라도 다른 값이 발견되면, 배열은 대칭이 아니므로 0을 반환하고, 모든 비교가 통과되면 1을 반환합니다.

 

 


정답은 더보기 클릭

더보기
class Solution {
    public int solution(int[][] arr) {
        // 2차원 배열의 모든 요소를 확인하기 위한 2중 for문
        for (int i = 0; i < arr.length; i++) {
            for (int j = 0; j < arr.length; j++) {
                // 현재 요소와 대칭 요소를 비교
                if (arr[i][j] != arr[j][i]) {
                    // 만약 다르면 대칭이 아니므로 0 반환
                    return 0;
                }
            }
        }
        // 모든 비교가 통과되면 대칭이므로 1 반환
        return 1;
    }
}
728x90