
package 배열1차원2차원.멘토링2다시12.my;
import java.util.Scanner;
public class Main {
    /**
     * 내 머리가 빠가인가 이해가 안된다...
     */
    public static void main(String[] args) {
        Scanner kb = new Scanner(System.in);
        int grade = kb.nextInt();
        int count = kb.nextInt();
        int[][] arr = new int[grade][count];
        for (int i = 0; i < grade; i++) {
            for (int j = 0; j < count; j++) {
                arr[i][j] = kb.nextInt();
            }
        }
        System.out.println(solution(grade, count, arr));
    }
    private static int solution(int grade, int count, int[][] arr) {
        int answer = 0;
        for (int i = 0; i < grade; i++) {
            for (int j = 0; j < count; j++) {
            }
        }
        return answer;
    }
}package 배열1차원2차원.멘토링2다시12.teacher;
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner kb = new Scanner(System.in);
        int n = kb.nextInt();
        int m = kb.nextInt();
        int[][] arr= new int[m][n];
        for (int i = 0; i < m; i++) {
            for (int j = 0; j < n; j++) {
                arr[i][j] = kb.nextInt();
            }
        }
        System.out.println(solution(n, m, arr));
    }
    private static int solution(int n, int m, int[][] arr) {
        int answer = 0;
        for (int i = 1; i <= n; i++) {          // 첫 2중 for 문은 총 n 명의 개수만큼 나올 수 있는 모든 경우의 수
            for (int j = 1; j <= n; j++) {
                int cnt = 0;
                for (int k = 0; k < m; k++) {   // k 는 테스트 번호
                    int pi = 0, pj = 0;         // pi = i 의 위치, pj = j 의 위치
                    for (int s = 0; s < n; s++) {   // s 는 등수
                        if (arr[k][s] == i) {   // k 번째 테스트에서 s 등을 한 인물이 i 와 같다면
                            pi = s;
                        }
                        if (arr[k][s] == j) {
                            pj = s;
                        }
                    }
                    if (pi < pj) {
                        cnt++;
                    }
                }
                if (cnt == m) {
                    answer++;
                }
            }
        }
        return answer;
    }
}
일단 이해해한다고 했는데... 진짜 이해가 안된다. for 문이 두개여도 복잡한데 네개나 나오니까 대가리 터질것같다
'기타 > 코딩테스트' 카테고리의 다른 글
| 3-1. 두 배열 합치기 (0) | 2023.02.18 | 
|---|---|
| 2장 배열 주요개념 및 복습 노트 (0) | 2023.02.14 | 
| 2-11. 임시반장 (0) | 2023.02.14 | 
| 2-10. 봉우리 (0) | 2023.02.14 | 
| 2-9 격자판 최대합 (0) | 2023.02.14 |