https://www.acmicpc.net/problem/10814
๋ฌธ์
์จ๋ผ์ธ ์ ์ง์ ๊ฐ์ ํ ์ฌ๋๋ค์ ๋์ด์ ์ด๋ฆ์ด ๊ฐ์ ํ ์์๋๋ก ์ฃผ์ด์ง๋ค. ์ด๋, ํ์๋ค์ ๋์ด๊ฐ ์ฆ๊ฐํ๋ ์์ผ๋ก, ๋์ด๊ฐ ๊ฐ์ผ๋ฉด ๋จผ์ ๊ฐ์ ํ ์ฌ๋์ด ์์ ์ค๋ ์์๋ก ์ ๋ ฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ์จ๋ผ์ธ ์ ์ง ํ์์ ์ N์ด ์ฃผ์ด์ง๋ค. (1 ≤ N ≤ 100,000)
๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์๋ ๊ฐ ํ์์ ๋์ด์ ์ด๋ฆ์ด ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถ๋์ด ์ฃผ์ด์ง๋ค. ๋์ด๋ 1๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ์ผ๋ฉฐ, 200๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์ ์์ด๊ณ , ์ด๋ฆ์ ์ํ๋ฒณ ๋์๋ฌธ์๋ก ์ด๋ฃจ์ด์ ธ ์๊ณ , ๊ธธ์ด๊ฐ 100๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ๋ฌธ์์ด์ด๋ค. ์ ๋ ฅ์ ๊ฐ์ ํ ์์๋ก ์ฃผ์ด์ง๋ค.
์ถ๋ ฅ
์ฒซ์งธ ์ค๋ถํฐ ์ด N๊ฐ์ ์ค์ ๊ฑธ์ณ ์จ๋ผ์ธ ์ ์ง ํ์์ ๋์ด ์, ๋์ด๊ฐ ๊ฐ์ผ๋ฉด ๊ฐ์ ํ ์์ผ๋ก ํ ์ค์ ํ ๋ช ์ฉ ๋์ด์ ์ด๋ฆ์ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํด ์ถ๋ ฅํ๋ค.
ํ์ด
๋์ด์ -> ์ด๋ฆ์์ผ๊ฑฐ๋ผ๋ ํธ๊ฒฌ์ผ๋ก ๋ฌธ์ ๋ฅผ ํ์ด์ ์ด๋ฐ์ ์ฝ์งํ๋ค..
๊ฐ์ ์์๋ฅผ ๋ฐ์ํ๋ ค๋ฉด ๊ฐ์ ์์๋ฅผ ๊ด๋ฆฌํ๊ฑฐ๋ stable_sort๋ฅผ ์ด์ฉํ์ฌ ๋์ด๊ฐ ๊ฐ์๋๋ ์์๊ฐ ๋ณํ์ง ์๋๋ก ๊ตฌํํด์ผํ๋ ๋ฌธ์ ๋ค.
// Authored by : seondal
// Co-authored by : -
// #include <bits/stdc++.h>
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
typedef pair<int, string> ci;
bool cmp (ci a, ci b) {
if(a.first != b.first)
return a.first < b.first;
return false;
}
int main() {
ios_base::sync_with_stdio(false); cin.tie(NULL);
int n;
cin >> n;
vector<ci>v(n);
for(int i=0; i<n; i++)
cin >> v[i].first >> v[i].second;
stable_sort(v.begin(), v.end(), cmp);
for(int i=0; i<n; i++)
cout << v[i].first << " " << v[i].second << "\n";
return 0;
}
/*
*/
'๐๏ธ ICPC Sinchon' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[BOJ S3][C++] ๋ฐฑ์ค 24511๋ฒ: queuestack (์๊ฐ์ด๊ณผ๋ฅผ ํด๊ฒฐํด๋ณด์) (0) | 2023.01.13 |
---|---|
[BOJ][C++] ๋ฐฑ์ค 1427๋ฒ: ์ํธ์ธ์ฌ์ด๋ (0) | 2023.01.11 |
[BOJ][C++] ๋ฐฑ์ค 11931๋ฒ: ์ ์ ๋ ฌํ๊ธฐ 4 (0) | 2023.01.11 |
[BOJ][C++] ๋ฐฑ์ค 2751๋ฒ: ์ ์ ๋ ฌํ๊ธฐ 2 (0) | 2023.01.11 |
[C++][BOJ] ๋ฐฑ์ค 2210๋ฒ: ์ซ์ํ ์ ํ (0) | 2021.08.18 |