본문 바로가기

TIL(Today I Learned)

TIL-231113([프로그래머스/자바] 특별한 이차원 배열 2)

📝오늘 공부한 것

  • JMeter 테스트
  • 커리어톤 참여하기
  • 프로그래머스 문제풀기

📌 문제

📌 풀이

class Solution {
    public int solution(int[][] arr) {
        int answer = 1;
        int n = arr.length;

        for(int i=0;i<n;i++){
            for(int j=0;j<n;j++){
                if(arr[i][j] != arr[j][i]){
                    answer = 0;
                    break;
                }
                if(answer == 0){
                    break;
                }
            }
        }
        return answer;
    }
}

 

⭐ stream을 이용한 풀이

'다른 사람의 풀이'를 보면 stream을 많이 이용하는 것 같다.

stream 사용에 대해서는 좋다, 좋지 않다가 많이 나뉘는 것 같지만, 쓰지 않더라도 알고 있는 것과 모르고 있는 것은 다르기 때문에 요즘은 stream을 사용해서 풀어보려고 하는 것 같다.

import java.util.stream.IntStream;

class Solution {
    public int solution(int[][] arr) {
        int n = arr.length;
        return IntStream.range(0, n)
            .allMatch(i -> IntStream.range(0, n)
                .allMatch(j -> arr[i][j] == arr[j][i])) ? 1 : 0;
    }
}