문제링크

  º  https://www.acmicpc.net/problem/11651

 

사용 알고리즘

  º  퀵 소트

 

시간복잡도

  º  $\mathcal{O}(NlogN)$

 

풀이

 

위와 같이 문제에서 제시한 정렬 순서로 sort를 할 수 있게 compare함수를 설계하여 해결하면 되는 정렬문제 입니다.

아래 블로그에서 C++ STL의 사용법을 참고해서 해결하면 됩니다. 언젠가 아래 블로그와 같이 C++ STL에 대한 사용법도 정리할 수 있으면 좋겠습니다. 게을러서 오래걸리겠지만

 

https://m.blog.naver.com/PostView.nhn?blogId=ndb796&logNo=221227975229&proxyReferer=https:%2F%2Fwww.google.com%2F

 

8. C++ STL sort() 함수 다루기 ①

지난 시간까지 선택 정렬, 버블 정렬, 삽입 정렬, 퀵 정렬, 병합 정렬의 개념에 대해 이해하고 간단한 프로...

blog.naver.com

소스코드

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
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
vector <pair<intint>> v;
int n;
bool cmp(pair<intint> a, pair<intint> b)
{
    if (a.second == b.second)
        return a.first < b.first;
    return a.second < b.second;
}
int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL), cout.tie(NULL);
    cin >> n;
    v.resize(n);
    for (int i = 0; i < n; i++)
        cin >> v[i].first >> v[i].second;
    sort(v.begin(), v.end(), cmp);
    for (int i = 0; i < n; i++)
        cout << v[i].first <<' ' <<v[i].second << '\n';
    return 0;
}
Colored by Color Scripter
cs

'Algorithm > boj' 카테고리의 다른 글

백준 1654번 랜선 자르기  (0) 2021.10.24
백준 13397번 구간 나누기 2  (0) 2021.10.24
백준 1939번 중량제한  (0) 2021.10.24
백준 2805번 나무 자르기  (0) 2021.10.24
백준 2110번 공유기 설치  (1) 2021.10.24

+ Recent posts