이기적인 방목

면접 대비

시간 제한1초메모리 제한128 MB

요약
N개의 구간이 주어질 때, 서로 겹치지 않도록 고를 수 있는 구간의 최대 개수를 구한다.
난이도

보통10점 중 4점

유형
그리디, 정렬, 구간, 배열
정답자
아직 제출이 없습니다

문제

농부 John의 소 NN마리(1≤N≤500001 \le N \le 50000)는 각자 목초지의 특정 구간에서 풀을 뜯는 것을 좋아한다. 목초지는 하나의 커다란 1차원 수직선으로 생각할 수 있다. ii번째 소가 좋아하는 방목 구간은 위치 SiS_i에서 시작하여 위치 EiE_i에서 끝난다(1≤Si<Ei≤1000000001 \le S_i < E_i \le 100000000).

소들은 매우 이기적이어서 어떤 소도 자신의 방목 구간을 다른 소와 공유하려 하지 않는다. 따라서 두 소 ii와 jj는 Si≥EjS_i \ge E_j 또는 Ei≤SjE_i \le S_j일 때에만 동시에 풀을 뜯을 수 있다. 즉, 두 구간이 끝점에서 맞닿는 것은 허용되지만 서로 겹치는 것은 허용되지 않는다. John은 주어진 소들과 그 선호 구간에 대해, 동시에 풀을 뜯을 수 있는 소의 최대 마리 수를 알고 싶어 한다.

아래와 같은 구간을 가진 소 5마리를 생각해 보자.

  ... 1    2    3    4    5    6    7    8    9   10   11   12   13 ...
  ... |----|----|----|----|----|----|----|----|----|----|----|----|----
Cow 1:      <===:===>          :              :              :
Cow 2: <========:==============:==============:=============>:
Cow 3:          :     <====>   :              :              :
Cow 4:          :              :     <========:===>          :
Cow 5:          :              :     <==>     :              :

이 구간들은 각각 (2,4)(2, 4), (1,12)(1, 12), (4,5)(4, 5), (7,10)(7, 10), (7,8)(7, 8)을 나타낸다.

한 가지 해에서는 1번, 3번, 4번(또는 5번) 소가 모두 동시에 풀을 뜯을 수 있다. 만약 2번 소가 풀을 뜯으면 다른 어떤 소도 뜯을 수 없다. 또한 4번과 5번 소는 함께 뜯을 수 없으므로, 4마리 이상이 동시에 뜯는 것은 불가능하다.

입력

  • 첫째 줄: 정수 NN.
  • 둘째 줄부터 N+1N+1번째 줄까지: i+1i+1번째 줄에는 공백으로 구분된 두 정수 SiS_i와 EiE_i가 주어진다.

출력

  • 첫째 줄: 동시에 풀을 뜯을 수 있는 소의 최대 마리 수를 나타내는 정수 하나.

예제2

  1. 예제 1

    입력
    5
    2 4
    1 12
    4 5
    7 10
    7 8
    
    예상 출력
    3
    
  2. 예제 2

    입력
    4
    1 2
    2 3
    3 4
    4 5
    
    예상 출력
    4