[백준] 7568번 덩치

1926 단어 백준백준

백준 7568 덩치

문제

문제 url: https://www.acmicpc.net/problem/7568

문제 이해

입력들을 비교하여 현재 자신의 덩치 순위를 정하는 문제이다.
덩치 비교 기준은 몸무게와 키를 모두이다. 만약 몸무게와 키 둘 중 하나만 크다면, 큰 덩치로 인정하지 않고, 비교할 수 없어 동일한 덩치로 평가한다.
c++의 pair를 연습하기 좋은 문제이다.

입력과 출력

문제 해결 방법

첫번째 입력으로 몇명의 덩치를 비교하는 지 얻고, 나머지 입력들을 for문으로 vector pair로 입력들을 얻는다.
그리고 for문 두 개를 사용하여, vector내에서 자신의 몸무게와 키가 둘 다 큰 것의 갯수를 세는 방법으로 덩치 순위

코드 구현(c++)

#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;


int main(){
    int num;
    scanf("%d",&num);
    vector<pair<int,int> >v(num);
    int n1,n2;
    for(int i = 0 ; i < num; i++){
        scanf("%d %d",&n1,&n2);
        v[i].first = n1;
        v[i].second = n2;
    }
    for(int i = 0 ; i < num; i++){
        int rank = 1;
        for(int j = 0; j < num; j++){
            if(v[i].first < v[j].first && v[i].second < v[j].second){
                rank++;
            }
        }
        printf("%d ",rank);
    }
    return 0;
}

좋은 웹페이지 즐겨찾기