백준 7568번 덩치

바그다드·2023년 3월 8일
0

알고리즘

목록 보기
8/14

문제



리뷰

몸무게나 키 중 하나만 클 때 서로 같은 등수라고 한다면 
(55, 185)
(45, 190)
(50, 180)
일 때도 같은 등수인가가 제일 헷갈렸다.
그래서 각 등수에 대한 배열을 추가하여 각 등수가 몇명이나 있는지 저장을 해야하나 생각했다.
근데 어쨌건 (55, 185)와 (50, 180)은 분명한 상하 관계(?)가 성립하여 
등수가 나뉜다는 것을 알고 쓸데없는 생각을 했나 했다ㅜㅜ
결국 각 랭킹에 몇명이 있는지를 따로 만들 필요 없이 그냥 각 사람끼리 비교만 하면 됐다.
public class Q7568 {
    // 덩치
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[][] arr = new int[n][n];
        for(int i = 0; i < n; i++){
            arr[i][0] = sc.nextInt();
            arr[i][1] = sc.nextInt();
        }
        for (int i = 0; i < n; i++){
            int rank = 1;
            for (int y = 0; y < n; y++){
                if(i == y){
                    continue;
                }
                if (arr[i][0] < arr[y][0] && arr[i][1] < arr[y][1]){
                    rank ++;
                }
            }
            System.out.print(rank+" ");
        }
    }
}
profile
꾸준히 하자!

0개의 댓글