내가 작성한 코드

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 <intint> 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

+ Recent posts