본문 바로가기
백준 코딩테스트/실버

5635) 생일 (C++)

by xortl98 2022. 6. 11.
728x90

 출처 

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

 

5635번: 생일

어떤 반에 있는 학생들의 생일이 주어졌을 때, 가장 나이가 적은 사람과 가장 많은 사람을 구하는 프로그램을 작성하시오.

www.acmicpc.net

 내 풀이 

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

using namespace std;

int n = 0;
string name = " ";
int dd = 0, mm = 0, yyyy = 0;

vector<pair<pair<int, int>, pair<int, string>>>v;

int main()
{

	cin >> n;

	for (int i = 0; i < n; i++)
	{
		cin >> name >> dd >> mm >> yyyy;

		v.push_back({ {yyyy,mm},{dd,name} });
	}

	sort(v.begin(), v.end());

	cout << v[n - 1].second.second << endl;
	cout << v[0].second.second;
}

 해설

생년월일과 이름을 벡터안에 입력받고 오름차순으로 정렬 후 처음(가장 나이가 적은 사람) 맨 끝(가장 나이가 많은 사람)의 이름을 출력해주었다.

 느낀점 

얼릉 기말 시험이 끝나야한다.

'백준 코딩테스트 > 실버' 카테고리의 다른 글

3187) 양치기 꿍 (C++)  (2) 2022.06.19
1388) 바닥 장식  (0) 2022.06.18
1748) 수 이어 쓰기 1 (C++)  (0) 2022.06.06
1057) 토너먼트 (C++)  (0) 2022.06.05
11931) 수 정렬하기 4 (C++)  (0) 2022.06.03