杭师大向来是一个充满着人情味的地方,需要你细细的去感受它浓浓的人情味。这不,好事不就来了吗^_^
学校打算给每一个班级一笔费用当作班费,但因为班级人数不同等原因等分是不可能的,正好最近学校的任务比较多学校就想到了一个方案,借此发给每个班级一点班费,具体呢是这样的:
学校给每个班级都下发了不同的任务,每一个任务都有自己花费的时间 x 和难度 y ,而每个班级的人也有自己的最多空闲时间 x1 和最大的任务难度 y1 ,每一个人只能领取一个任务,而完成这个任务的条件就是x1>=x && y1>=y,而完成一个任务学校就会给这个班级500*x+2*y的钱。现在问你应该如何匹配任务才可以使得班级获得的钱最多呢。
输入N和M,N代表班级人数,M代表任务个数。接下去的N行输入代表每个人的 x1 和 y1,再接下去的M行代表每个任务的 x 和 y。(1<=N,M<1000,0<x1,x<1000,0<=y1,y<=100)
输出可以完成的任务数和最多可以获得的班费,两个数之间用一个空格隔开
样例一:很明显这个班唯一的独苗做 x 为100,y 为2的任务就可以拿到最多的钱。获得的钱就是500 * 100 + 2 * 2 = 50004
样例二:可怜啊,唯一的独苗都做不了一个任务,没钱拿啊
样例三:这个班级的两人都可以完成任务诶,这个班级一共拿了500 * 20 + 2 * 10 + 500 * 30 + 2 * 10 = 25040
听说 scanf 和 printf 比 cin 和 cout 快哦