inblog logo
|
silver
    알고리즘문제풀기

    [알고리즘문제풀기] 특별한 이차원 배열 2

    silver's avatar
    silver
    Apr 09, 2025
    [알고리즘문제풀기] 특별한 이차원 배열 2
    Contents
    문제내가 작성한 정답

    문제

    school.programmers.co.kr
    https://school.programmers.co.kr/learn/courses/30/lessons/181831

    내가 작성한 정답

    class Solution { public int solution(int[][] arr) { for(int i=0; i<arr.length; i++){ for(int j=0; j<arr[0].length; j++){ if(arr[i][j]==arr[j][i]) continue; else return 0; } } return 1; } }

    stream1 - findAny

    import java.util.stream.*; class Solution { public int solution(int[][] arr) { return IntStream.range(0,arr.length) .flatMap(i-> IntStream.of(IntStream.range(0,arr[0].length) .filter(j->arr[i][j]!=arr[j][i]) .map(j->1) // 조건을 만족하지 않는 경우에 1을 부여 .findAny() // 하나라도 찾으면 1 이상 .orElse(0)) // 모두 다 0이라면 만족하는 1 출력해야함 ).sum()==0?1:0; } }

    stream2 - allMatch

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

    silver

    RSS·Powered by Inblog