1. 문제 확인


2. 문제 풀이(소스 코드)
#include
using namespace std;
int main() {
int n;
cin >> n;
int* height = new int[n];
int* weight = new int[n];
int* rank = new int[n];
for (int i = 0; i < n; i++) {
cin >> weight[i] >> height[i];
rank[i] = n;
}
for (int i = 0; i < n; i++) {
for (int j = i + 1; j < n; j++) {
if (weight[i] > weight[j] && height[i] > height[j]) {
rank[i]--;
}
else if (weight[i] < weight[j] && height[i] < height[j]) {
rank[j]--;
}
else { // 순위를 매기지 못하는 경우
rank[i]--;
rank[j]--;
}
}
}
for (int i = 0; i < n; i++) {
cout << rank[i] << " ";
}
return 0;
}
3. 결과

'security > 백준 알고리즘' 카테고리의 다른 글
백준 알고리즘 14단계 정렬 - 수 정렬하기(2750) JAVA (0) | 2020.07.19 |
---|---|
백준 알고리즘 15단계 백트래킹 - 스타트와 링크(14889) JAVA (0) | 2020.07.19 |
백준 알고리즘 15단계 백트래킹 - 연산자 끼워넣기(14888) C++ (0) | 2020.07.19 |
백준 알고리즘 11단계 재귀 - 피보나치 수 5(10870)c++ (0) | 2020.07.11 |
백준 알고리즘 11단계 재귀 - 팩토리얼(10872) C++ (0) | 2020.07.11 |
댓글