내가 작성한 코드
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
|
#include <iostream>
#include <vector>
#include <algorithm>
#include <string>
using namespace std;
int N;
pair <int, int> xy[100000];
string name[100000];
int main() {
cin >> N;
for (int i = 0; i < N; i++) {
cin >> xy[i].first >> name[i];
xy[i].second = i;
}
sort(xy, xy + N);
for (int i = 0; i < N; i++) {
// endl 시간 초과
cout << xy[i].first << ' ' << name[xy[i].second] << '\n';
}
return 0;
}
|
cs |
- 먼저 들어온 순서를 pair로 저장 -> 첫 번째 값은 나이, 두 번째 값은 순서
- 이름은 따로 저장한 후 나이 순서로 sort 해주면 second 값의 순서가 섞이게 된다.
- 나이는 그대로 출력하고 name은 second값의 순서로 출력한다.
채점 결과
'BAEKJOON' 카테고리의 다른 글
[BaekJoon]11057번 - 오르막 수 (0) | 2019.07.30 |
---|---|
[BaekJoon]10825번 - 국영수 (0) | 2019.07.30 |
[BaekJoon]10844번 - 쉬운 계단 수 (0) | 2019.07.26 |
[BaekJoon]9095번 - 1, 2, 3 더하기 (0) | 2019.07.26 |
[BaekJoon]11651번 - 좌표 정렬하기 2 (0) | 2019.07.25 |