开心的日子
时间限制:1s内存限制:128M
题目描述
【问题描述】
小X的学校制定了一套徽章体系。学校老师经常会结合同学们的表现,给相应同学发放徽章,以此表扬进步,鼓励同学再接再厉。徽章有各式类型,例如“皮卡丘徽章”“小火龙徽章”“杰尼龟徽章”“喵喵徽章”……深受同学们的喜爱。
这些徽章一共有MM种类型,可以编号1\sim M1∼M。很多同学都把集齐MM种徽章作为自己最大的年度梦想。但集齐徽章是相当不容易的,因为同一天内,每名同学至多只会得到一枚徽章,也有可能得不到徽章;而在不同的两天,同一名同学所得到的徽章又有可能是重复的。
小X也特别希望得到这些徽章。但对于任何一天,他只关心这一天能否得到徽章,以及能否在过去至多连续DD天内(包括这一天)集到KK种不同的徽章——如果两者都可以,小X就会觉得这一天是一个“开心的日子”。
现在,如果告诉你小X分别在哪几天得到了具体哪种类型的徽章,你能计算出开学至今,小X总共有多少个“开心的日子”吗?
输入格式
输入共N+1N+1行,第一行包括五个用空格隔开的整数TT、NN、MM、DD和KK。前三个整数依次表示开学至今共TT天,其中有NN天小X获得了徽章,学校徽章共MM种。某一天如果能被认为是一个“开心的日子”,则这一天小X应获得一枚徽章,并且在过去至多连续DD天内(包括这一天)小X应集到KK种不同的徽章。
接下来NN行,每行包括两个用空格隔开的整数t_iti和k_iki,表示在开学的第t_iti天,小X获得了一枚编号k_iki的徽章。注意:保证这NN行按t_iti升序排列。
输出格式
输出只有一行,包括一个整数,表示开学第1\sim T1∼T天内小X共有多少个“开心的日子”。
输入样例1
输入1
复制
5 5 2 2 2
1 1
2 1
3 2
4 2
5 1
输出样例1
输出1
复制
2
【输入输出样例1说明】
“开心的日子”共有 2天:
1. 开学第3天,小X不仅得到了一枚徽章,而且在第2 到 3 天内得到了编号1、编号2共2 种不同的徽章,因此开学第3天是一个“开心的日子”。
2. 开学第5天,小X不仅得到了一枚徽章,而且在第4 到 5 天内得到了编号2、编号1共2 种不同的徽章,因此开学第5天是一个“开心的日子”。
此外,例如开学第2天,小X得到了一枚徽章,但在过去至多连续2天内(第1到2天)只得到了编号1共1种徽章,因此开学第2 天并不是一个“开心的日子”。
输入样例2
输入2
复制
11 6 3 8 2
1 1
3 3
5 2
9 2
10 2
11 2
输出样例2
输出2
复制
4
【输入输出样例2说明】
“开心的日子”共有4天:
1. 开学第3天,小X不仅得到了一枚徽章,而且在第1 到 3天内得到了编号1、编号3共2 种不同的徽章,因此开学第3 天是一个“开心的日子”。
2. 开学第5天,小X不仅得到了一枚徽章,而且在第3 到 5天内得到了编号3、编号2共2 种不同的徽章,因此开学第5 天是一个“开心的日子”。
3. 开学第9天,小X不仅得到了一枚徽章,而且在第3 到 9天内得到了编号3、编号2共2 种不同的徽章,因此开学第9天是一个“开心的日子”。
4. 开学第10天,小X不仅得到了一枚徽章,而且在第3 到 10天内得到了编号3、编号2共2 种不同的徽章,因此开学第9天是一个“开心的日子”。
此外,例如开学第11天,小X得到了一枚徽章,但在过去至多连续8天内(第4 到 11 天)只得到了编号2共1种徽章,因此开学第11天并不是一个“开心的日子”。
【数据规模与约定】
对于50\%50%的数据,1\le D,T\le 1,0001≤D,T≤1,000。
对于80\%80% 的数据,1 \le D,T\le 10^61≤D,T≤106。
对于100\%100% 的数据,1 \le D,T\le 10^91≤D,T≤109,1 \le N, M\le 2\times 10^51≤N,M≤2×105,k_i,K\le Mki,K≤M,t_i,D,N\le Tti,D,N≤T 且t_i\le t_{i+1}ti≤ti+1