알고리즘/문자열, 정렬

[알고리즘] 멘토링 with Java, 4차원 배열에 대한 생각

VIPeveloper 2022. 3. 8. 00:45
728x90
반응형

이 문제도 풀지 못했다.. 3차원 배열까지밖에 생각하지 못했기 때문이다.. 이건 4차원 배열 문제이다.

오늘 배운 것

1. 4차원 배열에 대한 생각

. 기준이 2개이다. 기준 2개에 대해 2차원 배열을 순회하며 if문을 순회하는 로직임을 알게 되었다.

2. 코드

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner kb = new Scanner(System.in);
        int n = kb.nextInt();
        int test = kb.nextInt();
        int[][] arr = new int[test][n];
        for (int i = 0; i < test; i++) {
            for (int j = 0; j < n; j++) {
                arr[i][j] = kb.nextInt();
            }
        }
        solution(test,n,arr);
    }

    private static void solution(int test,int n, int[][] arr) {
        int answer = 0;
        for (int i = 1; i <= n; i++) {
            for (int j = 1; j <= n; j++) {
                int pi=0,pj=0,cnt=0;
                for (int k = 0; k < test; k++) {
                    for (int l = 0; l < n; l++) {
                        if(arr[k][l] == i) pi = l;
                        if(arr[k][l] == j) pj = l;
                    }
                    if(pi<pj){
                        cnt++;
                    }
                }
                if(cnt==test){
                    answer++;
                }
            }
        }
        System.out.println(answer);
    }
}
728x90
반응형