D : 忙碌的志愿者

Progress Bar

时间限制:1 Sec 内存限制:256 MiB

提交


题目描述

在算法竞赛中,选手们AC一道题,就会有志愿者小姐姐们来发一个气球。

志愿者小姐姐发气球遵循以下规则:

1.如果有空闲的志愿者,则志愿者花费时间$t$将气球发给选手,并返回待命。

2.如果没有空闲的志愿者,气球请求会被挂起,直到有志愿者空闲下来。

3.优先发放最早产生的气球。如果有同时产生的气球,则优先发放对应选手编号小的。

当某一选手在$a$时刻AC了某道题后,而发气球的小姐姐在$b$时刻才出发,则这个选手的怒气值会增加$b-a$。

如果某个选手在任意时刻时怒气值大于或等于$d$,则会砸烂电脑,愤怒离场。

Reverie只希望有选手AK离场,不希望有选手愤怒离场。

现在给你一场比赛的题目AC信息,请你帮Reverie算算,她最少需要几个志愿者小姐姐来帮她发气球,才能保证所有气球都被发放且没有队伍愤怒离场。

输入描述

第一行输入四个整数$n,m,t,d$,分别表示题目AC信息的数量,选手数量,志愿者发一个气球所需要的时间,怒气值上限。

接下来n行,每行包含两个整数$a_i,b_i$表示在$a_i$时刻,选手$b_i$AC了一道题。

Limits:

$1 \leq n,m \leq 2×10^5$

$1 \leq t,d \leq 10^9$

$1 \leq a_i \leq 10^9$

$1 \leq b_i \leq m$


输出描述

一个整数代表最少需要的小姐姐人数。



样例输入

3 2 2 3
1 1
3 1
2 2

样例输出

1

来源

Wannacry-03