일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- c++
- datascience
- 스택
- Queue
- anomaly detection
- 큐
- ML
- classification
- BFS
- cs231n
- 통계
- 알고리즘
- DP
- 딥러닝
- p-value
- Machine learning
- 구현
- Deeplearning
- AA test
- Journal Review
- 7569번
- Game Data Analysis
- 자료구조
- Stack
- Python
- 그리디
- 백준
- 중앙갑
- Anti Cheat
- 정렬
- Today
- Total
Software Hyena::
[백준 11557번] - Yangjojang of The Year / C++ 본문
www.acmicpc.net/problem/11557
11557번: Yangjojang of The Year
입학 OT때 누구보다도 남다르게 놀았던 당신은 자연스럽게 1학년 과대를 역임하게 되었다. 타교와의 조인트 엠티를 기획하려는 당신은 근처에 있는 학교 중 어느 학교가 술을 가장 많이 먹는지
www.acmicpc.net
문제
입학 OT때 누구보다도 남다르게 놀았던 당신은 자연스럽게 1학년 과대를 역임하게 되었다.
타교와의 조인트 엠티를 기획하려는 당신은 근처에 있는 학교 중 어느 학교가 술을 가장 많이 먹는지 궁금해졌다.
학교별로 한 해동안 술 소비량이 주어질 때, 가장 술 소비가 많은 학교 이름을 출력하여라.
입력
입력의 첫 줄에는 테스트 케이스의 숫자 T가 주어진다.
매 입력의 첫 줄에는 학교의 숫자 정수 N(1 ≤ N ≤ 100)이 주어진다.
이어서 N줄에 걸쳐 학교 이름 S(1 ≤ |S| ≤ 20, S는 공백없는 대소문자 알파벳 문자열)와 해당 학교가 지난 한 해동안 소비한 술의 양 L(0 <= L <= 10,000,000)이 공백으로 구분되어 정수로 주어진다.
같은 테스트 케이스 안에서 소비한 술의 양이 같은 학교는 없다고 가정한다.
출력
각 테스트 케이스마다 한 줄에 걸쳐 술 소비가 가장 많은 학교의 이름을 출력한다.
--------------------------------------------------------------------------------------------------------------
풀이
<C++>
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
bool sortFunction(pair<string, int> a, pair<string, int> b) {
return a.second > b.second;
}
int main() {
ios::sync_with_stdio(false);
cout.tie(NULL);
cin.tie(NULL);
int T;
cin >> T;
for (int i = 0; i < T; ++i) {
int N;
cin >> N;
vector<pair<string, int>> rank;
string name;
int num;
for (int j = 0; j < N; ++j) {
cin >> name >> num;
rank.push_back({ name, num });
}
sort(rank.begin(), rank.end(), sortFunction);
cout << rank[0].first << '\n';
}
return 0;
}
페어로 이루어진 벡터를 정렬한 후 가장 앞의 인덱스의 학교이름을 출력하면 풀리는 문제이다.
1. T를 입력받는다
2. N을 입력받는다.
3. name과 num을 각각 입력받은 후 pair의 형태로 vector에 저장한다.
4. 내림차순으로 정렬한다.
5. rank[0]을 출력한다.
'알고리즘 > 백준' 카테고리의 다른 글
[백준 9084번] - 동전 / C++ (0) | 2021.02.21 |
---|---|
[백준 15688번] - 수 정렬하기 5 / C++ (sync_with_stdio, cin.tie, cout.tie) (0) | 2021.02.20 |
[백준 2839번] - 설탕 배달 / C++ (0) | 2021.02.20 |
[백준 10814번] - 나이순 정렬/ C++ (0) | 2021.02.20 |
[백준 11116번] - 교통량 / C++ (0) | 2021.02.19 |