반응형


 

백준 - 단계별로 풀어보기 [7568] 

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

 

문제

 

 

전체 사람의 수 N과 각 사람의 몸무게와 키를 나타내는 값이 입력됬을 때,

자기보다 몸무게와 키가 크다면 자기보다 등치가 크다고 간주한다.

자신보다 덩치가 큰 사람이 K명이라면 K+1등이라고 할 때, 각 덩치의 등수를 출력하는 프로그램을 작성하는 문제이다.

 

풀이

 

몸무게와 키를 함께 저장하는 pair형식의 배열을 활용하여, 자신보다 큰 몸무게와 키를 가진 사람이 있을 경우 등수를 1등씩 밀어나가는 방식으로 풀이한다.

 

 

코드

 

#include <iostream>
#include <utility>
using namespace std;

int main() {
    int num;
    int rank = 1;
    pair<int,int> arr[50];
    cin >> num;
    for(int i = 0; i < num; i++)
        cin >> arr[i].first >> arr[i].second;
    for(int i = 0; i < num; i++)
    {
        for(int j = 0; j < num; j++)
            if(arr[i].first < arr[j].first && arr[i].second < arr[j].second)
                rank++;
        cout << rank << ' ';
        rank = 1;
    }
}

 

 

평가

 

pair방식을 활용하면 좀 더 풀이가 수월해지는 문제이다.

정답률 60%로 순탄한 문제이다.

 

 

반응형
블로그 이미지

Hyunsoo Luke HA

석사를 마치고 현재는 Upstage에서 전문연구요원으로 활동중인 AI 개발자의 삽질 일지입니다! 이해한 내용을 정리하는 용도로 만들었으니, 틀린 내용이 있으면 자유롭게 의견 남겨주세요!

,