반응형
백준 - 단계별로 풀어보기 [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%로 순탄한 문제이다.
반응형
'Algorithm > Baekjoon BOJ' 카테고리의 다른 글
[백준 / BOJ] - 2750번 수 정렬하기 C++ 풀이 (0) | 2020.03.03 |
---|---|
[백준 / BOJ] - 1436번 영화감독 숌 C++ 풀이 (1) | 2020.02.29 |
[백준 / BOJ] - 2231번 분해합 C++ 풀이 (0) | 2020.02.28 |
[백준 / BOJ] - 2798번 블랙잭 C++ 풀이 (0) | 2020.02.28 |
[백준 / BOJ] - 11729번 하노이 탑 이동 순서 C++ 풀이 (1) | 2020.02.26 |