본문 바로가기

알고리즘 공부 및 문제 풀이/백준(BOJ)

[c++] 백준 7568 덩치

백준 단계별로 풀어보기 [브루트 포스] 덩치

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

 

7568번: 덩치

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

www.acmicpc.net

 

[풀이] 

몸무게를 배열 x에, 키를 배열 y에 저장한다. 본인보다 몸무게와 키가 모두 큰 경우에만 덩치가 큰 것으로 인정해 count 값을 증가시키고 count + 1인 자신의 등수를 배열 level에 저장한다. 

 

[코드]

#include <iostream>

int main() {
    int n, count;
    std::cin >> n;
    int* x = new int[n];
    int* y = new int[n];
    int* level = new int[n];

    for (int i = 0; i < n; i++) {
        std::cin >> x[i] >> y[i];
    }

    for (int i = 0; i < n; i++) {
        count = 0;
        for (int j = 0; j < n; j++) {
            if (x[i] < x[j] && y[i] < y[j])
                count++;
        }
        level[i] = count+1;
    }

    for (int i = 0; i < n; i++) {
        std::cout << level[i] << " ";
    }
   
    delete[] x, y;
    x = NULL;
    y = NULL;
}