#P5638. 分配防晒霜

分配防晒霜

题目描述

奶牛们计划着去海滩上享受日光浴。为了避免皮肤被阳光灼伤,所有C(1<=C<=2500){C(1 <= C <= 2500)}头奶牛必须在出门之前在身上抹防晒霜。

i{i}头奶牛适合的最小和最 大的SPF{SPF}值分别为minSPFi{minSPF_i}maxSPFi(1<=minSPFi<=1,000{maxSPF_i(1 <= minSPF_i <= 1,000}; minSPFi<=maxSPFi<=1,000){minSPF_i <= maxSPF_i <= 1,000)}

如果某头奶牛涂的防晒霜的SPF{SPF}值过小,那么阳光仍然能 把她的皮肤灼伤;如果防晒霜的SPF{SPF}值过大,则会使日光浴与躺在屋里睡觉变得 几乎没有差别。

为此,奶牛们准备了一大篮子防晒霜,一共L(1<=L<=2500){L(1 <= L <= 2500)}瓶。第i{i}瓶 防晒霜的SPF{SPF}值为SPFi(1<=SPFi<=1,000){SPF_i(1 <= SPF_i <= 1,000)}。瓶子的大小也不一定相同,第i{i }瓶防晒霜可供coveri{cover_i}头奶牛使用。

当然,每头奶牛只能涂某一个瓶子里的防晒霜 ,而不能把若干个瓶里的混合着用。 请你计算一下,如果使用奶牛们准备的防晒霜,最多有多少奶牛能在不被灼 伤的前提下,享受到日光浴的效果?

输入格式

1{1}行:2{2}个用空格隔开的整数:C{C}L{L}

2..C+1{2..C+1}行:

i+1{i+1}行给出了适合第i{i}头奶牛的SPF{SPF}值的范围:minSPFi{minSPF_i}以及 maxSPFi{maxSPF_i }

C+2..C+L+1{C+2..C+L+1}行:

i+C+1{i+C+1}行为了第i{i}瓶防晒霜的参数:SPFi{SPF_i}coveri{cover_i,}两个 数间用空格隔开。

输出格式

1{1}行: 输出1{1}个整数,表示最多有多少头奶牛能享受到日光浴

样例

输入样例

3 2
3 10
2 5
1 5
6 2
4 1

输出样例

2

提示

输入说明:

一共有3{3}头奶牛,2{2}瓶防晒霜。3{3}头奶牛适应的SPF{SPF}值分别为3..10{3..10,}2..5{2..5,}以及1..5{1..5}

2{2}瓶防晒霜的SPF{SPF}值分别为6{6(}可使用2{2}次)和4{4(}可使用1{1}次)。

可能的分配方案为:奶牛1{1}使用第1{1}瓶防晒霜,奶牛2{2}或奶牛3{3}使用第2{2}瓶防晒霜。显然,最多只有2{2}头奶牛的需求能被满足。