본문 바로가기

코딩테스트

백준 7568: 덩치[JAVA]

https://www.acmicpc.net/problem/7568

 

7568번: 덩치

우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩

www.acmicpc.net

 

[난이도]

- Silver 5

 

[알고리즘]

-부르트 포스

 

[정답코드]

import org.w3c.dom.html.HTMLParagraphElement;

import java.io.*;
import java.util.*;

public class Main {
    public static void main(String[] args) throws Exception {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter((new OutputStreamWriter(System.out)));
        StringTokenizer st = new StringTokenizer(br.readLine(), " ");

        int N = Integer.parseInt(st.nextToken());
        int[][] arr = new int[N][2];
        for (int i = 0; i < N; i++) {
            st = new StringTokenizer(br.readLine(), " ");
            arr[i][0] = Integer.parseInt(st.nextToken());
            arr[i][1] = Integer.parseInt(st.nextToken());
        }

        for (int i = 0; i < N; i++) {
            int rank = 1;

            for (int j = 0; j < N; j++) {
                if (i != j) { // 본인 제외
                    if (arr[i][0] < arr[j][0] && arr[i][1] < arr[j][1]) { // 다른 사람과 키와 몸무게를 비교, 둘다 작을경우
                        rank++; // rank를 1씩 증가
                    }
                }
            }
            bw.write(rank + " ");
        }
        bw.flush();
        bw.close();
        br.close();
    }
}

 

[풀이]

1. 다른 사람과 키와 몸무게를 비교해 두 값 모두 적다면 rank를 1씩 늘린다.

2. 비교가 끝나고 난 후의 rank를 출력해준다.