만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

McFly

시간 제한2초메모리 제한512 MB

요약
McFly가 1초에 1미터씩 움직이며 시간 구간마다 놓이는 쿠키를 맛볼 때, 같은 쿠키를 연달아 맛보지 않는 조건에서 얻을 수 있는 최대 맛본 횟수를 구합니다.
난이도

어려움10점 중 8점

유형
동적 계획법, 구간, 시뮬레이션
정답자
아직 제출이 없습니다

문제

McFly는 오늘 밤 파티에 가는 파리다. 안타깝게도 이 파티는 파리가 아니라 사람을 위한 파티다.

파티장에는 길이가 10910^9미터인 테이블이 있다. 사람들은 쿠키를 테이블에 잠시 내려놓았다가 나중에 다시 집어 간다. 사람이 쿠키 곁을 떠난 사이에 McFly가 날아가 그 쿠키를 맛볼 수 있다. McFly는 쿠키 맛보기를 가장 좋아한다. 쿠키를 먹고 싶은 것이 아니라 가능한 한 많은 쿠키의 맛을 보고 싶어 한다. 직전에 맛본 쿠키와 다른 쿠키이거나 파티에서 처음 맛보는 쿠키라면 그 맛을 즐긴다. 같은 쿠키를 여러 번 맛봐도 되지만, 같은 쿠키를 두 번 맛볼 때마다 그 사이에 다른 쿠키를 최소 하나는 맛봐야 한다.

점쟁이가 테이블에 놓일 쿠키 nn개의 정보를 McFly에게 알려 주었다. ii번째 쿠키는 테이블의 시작점에서 xix_i미터 떨어진 위치에 있고, 시각 sis_i부터 fif_i까지 놓여 있다. 시각은 파티가 시작한 뒤의 초 단위다. 같은 위치에 같은 시간에 놓인 쿠키는 없다. 즉 i≠ji \ne j이고 xi=xjx_i = x_j이면 fi≤sjf_i \le s_j 또는 fj≤sif_j \le s_i이다.

테이블은 수평선이고, McFly와 쿠키는 그 위의 점으로 본다. 파티가 시작하기 전에 McFly는 어느 위치에 있어도 된다. 파티가 시작한 뒤에는 테이블을 따라 초당 1미터의 속도로 날거나 제자리에 머물 수 있다. McFly는 시각 tt가 si≤t<fis_i \le t < f_i를 만족할 때 위치 xix_i에 있으면 쿠키 ii를 맛볼 수 있다. 맛보는 데는 시간이 걸리지 않는다.

McFly가 즐길 수 있는 맛의 최대 개수를 구하라.

입력

첫째 줄에 정수 nn (1≤n≤1000001 \le n \le 100000)이 주어진다. 이어서 nn개의 줄에 정수 xix_i, sis_i, fif_i가 한 줄씩 주어진다 (0≤xi≤1090 \le x_i \le 10^9, 0≤si<fi≤1090 \le s_i < f_i \le 10^9). 모든 쿠키가 테이블에 놓여 있는 시간의 합은 ∑i=1n(fi−si)≤105\sum_{i=1}^{n} (f_i - s_i) \le 10^5을 넘지 않는다.

출력

McFly가 즐길 수 있는 새로운 맛의 최대 개수를 출력한다.

예제2

  1. 예제 1

    입력
    4
    7 2 5
    1 2 4
    4 1 6
    2 9 10
    
    예상 출력
    3
    
  2. 예제 2

    입력
    3
    0 0 11
    2 0 11
    3 4 9
    
    예상 출력
    8