만드는 중입니다

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

플라니네

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

요약
산의 봉우리와 골짜기가 번갈아 나타나는 윤곽이 주어질 때, 높이 h의 요정이 모든 골짜기를 비출 수 있는 최소 요정 수를 구합니다.
난이도

보통10점 중 7점

유형
그리디, 기하, 구현
정답자
아직 제출이 없습니다

문제

Zoran은 실연의 아픔을 잊으려고 달마티아의 고향을 떠돌아다닌다. 그는 특이한 모양의 산을 만나는데, 그 산 너머에서는 한 젊은 여인이 그를 기다리고 있다. 이 산은 높은 점과 낮은 점이 번갈아 나타나는 nn개의 점으로 표현되며, nn은 홀수이다. 홀수 번째 점들 가운데 첫 번째 점과 마지막 점을 제외한 점을 골짜기라고 부른다.

Zoran은 어둠을 무서워한다. 사랑의 부름조차 그에게 밤에 산을 넘을 용기를 주지 못한다. 늘 그렇듯 벨레비트의 요정들이 도와준다.

각 요정은 높이 hh에 고정된 빛나는 점으로 모델링한다. 요정과 골짜기를 잇는 선분이 산의 내부와 교차하지 않을 때, 그리고 그때에만 요정이 골짜기를 비춘다.

첫 번째 예시의 산과, 골짜기 세 곳을 모두 비추는 요정 한 명이다.

모든 골짜기를 동시에 비출 수 있는 요정의 최소 인원은 몇 명인가?

입력

첫 줄에 두 정수 nn(3≤n<1063 \le n < 10^6, nn은 홀수)과 hh(1≤h≤1061 \le h \le 10^6)가 주어진다. nn은 산을 나타내는 점의 개수이고, hh는 요정이 사는 높이이다.

이어지는 nn개 줄의 ii번째 줄에는 산의 ii번째 점의 좌표 정수 xix_i와 yiy_i(−106≤xi≤106-10^6 \le x_i \le 10^6, 0≤yi<h0 \le y_i < h)가 주어진다.

x1<x2<⋯<xnx_1 < x_2 < \cdots < x_n이고, y1<y2y_1 < y_2, y2>y3y_2 > y_3, y3<y4y_3 < y_4, …\ldots, yn−1>yny_{n-1} > y_n을 만족함이 보장된다.

출력

모든 골짜기가 비춰지도록 하는 요정의 최소 인원을 출력한다.

힌트

첫 번째 예시는 문제 본문에 나와 있다. 두 번째 예시는 요정 한 명으로는 골짜기를 모두 비출 수 없음을 보일 수 있다. 요정 두 명을 쓰는 예시는 아래 그림과 같다.

예제2

  1. 예제 1

    입력
    9 6
    0 0
    1 2
    3 0
    6 3
    8 1
    9 2
    11 1
    12 4
    14 0
    
    예상 출력
    1
    
  2. 예제 2

    입력
    9 5
    -5 2
    -4 3
    -2 1
    0 4
    2 2
    3 3
    4 1
    5 2
    6 1
    
    예상 출력
    2