도착하는 연구원을 잠기지 않은 빈 워크스테이션에 앉혀 아끼는 잠금 해제 횟수를 최대화합니다.
보통5그리디힙정렬면접 대비아직 제출이 없습니다시간 제한10초메모리 제한256 MB찬솔이는 새로 들여온 슈퍼컴퓨터를 관리한다. 연구원이 계산을 하러 올 때마다 워크스테이션을 하나씩 배정하는 것이 찬솔이의 일이다.
찬솔이는 연구원이 올 때마다 잠긴 기계를 풀어주는 일을 몹시 귀찮아한다. 그래서 보안 규정을 무시하고, 자리를 뜰 때 워크스테이션을 잠그지 말아 달라고 부탁하기로 했다. 잠기지 않은 빈 워크스테이션이 있으면 새로 온 연구원을 그 자리에 앉히면 되니 일이 훨씬 줄어든다.
안타깝게도 빈 워크스테이션은 작업이 없는 시간이 m분을 넘어가는 순간 자동으로 잠긴다. 비어 있던 시간이 정확히 m분이면 아직 잠기지 않은 상태다. 연구원 i는 ai분에 도착해 정확히 si분 동안 머무르고 ai+si분에 자리를 뜬다. 워크스테이션 하나에는 한 번에 한 명만 앉는다.
어떤 연구원이 t분에 자리를 떴다면, 그 워크스테이션은 t분부터 t+m분까지(양 끝 포함) 도착하는 다른 연구원에게 잠금 해제 없이 그대로 넘어간다. 워크스테이션 수는 충분하다고 가정한다. 찬솔이가 배정을 가장 잘 했을 때 잠금 해제를 최대 몇 번 덜 하는지 구하여라.
첫째 줄에 연구원의 수 n과 워크스테이션이 자동으로 잠기는 기준 시간 m이 주어진다. (1≤n≤300000, 1≤m≤108)
다음 n개 줄에 각 연구원의 도착 시각 a와 머무는 시간 s가 공백으로 구분되어 주어진다. (1≤a,s≤108)
찬솔이가 절약할 수 있는 잠금 해제 횟수의 최댓값을 한 줄에 출력한다.