[출처] https://www.acmicpc.net/problem/10814
10814번: 나이순 정렬
온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 프로그램을
www.acmicpc.net
이 문제는 얼핏 보면 단순히 벡터로 입력받아 sort()함수로 정렬해서 출력하면 될것처럼 보이지만
sort()함수로 하면 순서를 보장받지 못하기 때문에
stable_sort()함수를 사용해야 한다. 무슨 말이냐면 sort()함수는 4 2 1 3 4 를 1 2 3 4 4 로 정렬을 시켰을때 4끼리의 순서가 보장받지 못한다. 그러나 stable_sort()함수를 사용하면 4 2 1 3 4 에서의 앞에있는 4가 1 2 3 4 4 에서의 먼저오는 4이다. 이런 순서를 보장받는다.
pair<> 를 사용해서 int와 string를 같이 입력 받고
stable_sort()함수를 사용하여 순서를 보장받아 정렬하고 출력하였다.
'프로그래밍 > 백준(C++)' 카테고리의 다른 글
[실2] 2805. 나무 자르기 (0) | 2022.09.09 |
---|---|
[실2] 1874. 스택 수열 (0) | 2022.09.06 |
[실4] 9012. 괄호 (0) | 2022.08.20 |
[실4] 2164. 카드2 (0) | 2022.08.20 |
[브5] 10699. 오늘 날짜 (0) | 2022.03.14 |
댓글