#P11268. 【MX-S5-T2】买东西题

【MX-S5-T2】买东西题

背景

原题链接:https://oier.team/problems/S5B。


此题题意与关联的现实生活情景略有不同,请认真阅读题目描述。

题目描述

你要买 nn 个物品,第 ii 个物品原价 aia_i 元,折扣价 bib_i 元(保证 bi≤aib_i \le a_i)。

你还有 mm 个满减优惠券,第 jj 个优惠券形如原价满 wjw_j 减 vjv_j(保证 vj≤wjv_j \le w_j)。

对于第 ii 个物品,你可以选择以下三种购买方式之一:

  1. 使用原价 aia_i 购买。
  2. 使用折扣价 bib_i 购买。
  3. 选择一个未使用过的优惠券 jj,要求满足 ai≥wja_i \ge w_j,使用优惠券 jj,以 ai−vja_i - v_j 的价格购买。注意每个优惠券 jj 只能被最多一个 ii 使用。

求购买所有物品最少用钱。

输入格式

第一行,两个正整数 n,mn,m,表示物品数量和优惠券数量。

接下来 nn 行,每行两个正整数 ai,bia_i,b_i,表示第 ii 个物品的原价和折扣价。

接下来 mm 行,每行两个正整数 wj,vjw_j,v_j,表示第 jj 个优惠券是满 wjw_j 减 vjv_j 的。

输出格式

仅一行,一个整数,表示最少用钱。

5 4
7 5
4 2
5 2
6 4
6 3
5 1
7 4
5 4
3 2
12
3 4
3 2
5 1
5 5
5 5
3 3
4 2
2 1
1

提示

【样例解释 #1】

因为满足 w2≤a1w_2\le a_1 即 7≤77\le 7,所以可以使用原价和第 22 个优惠券购买第 11 个物品,花费 7−4=37-4=3 元。

因为满足 w4≤a2w_4\le a_2 即 3≤43\le 4,所以可以使用原价和第 44 个优惠券购买第 22 个物品,花费 4−2=24-2=2 元。

使用折扣价购买第 33 个物品,花费 22 元。

使用原价和第 33 个优惠券购买第 44 个物品,花费 6−4=26-4=2 元。

使用折扣价购买第 55 个物品,花费 33 元。

共 3+2+2+2+3=123+2+2+2+3=12 元。可以证明这是最少用钱方案。

【样例解释 #2】

使用原价和第 22 个优惠券购买第 11 个物品。

使用折扣价购买第 22 个物品。

使用原价和第 11 个优惠券购买第 33 个物品。

共 0+1+0=10+1+0=1 元。

【样例 #3】

见附件中的 buy/buy3.in 与 buy/buy3.ans。

该组样例满足测试点 33 的约束条件。

【样例 #4】

见附件中的 buy/buy4.in 与 buy/buy4.ans。

该组样例满足测试点 5∼65\sim 6 的约束条件。

【样例 #5】

见附件中的 buy/buy5.in 与 buy/buy5.ans。

该组样例满足测试点 88 的约束条件。

【样例 #6】

见附件中的 buy/buy6.in 与 buy/buy6.ans。

该组样例满足测试点 9∼109\sim 10 的约束条件。

【数据范围】

对于所有测试数据,保证:1≤n,m≤1061 \le n,m \le 10^6,1≤ai,bi,wj,vj≤1091 \le a_i,b_i,w_j,v_j \le 10^9,bi≤aib_i\le a_i,vj≤wjv_j\le w_j。

测试点编号 n≤n\le m≤m\le ai,wj≤a_i,w_j\le 特殊性质
11 1010 无
22 10510^5 10410^4 ai=bia_i=b_i
33 10910^9
44 10410^4 max⁡jwj≤min⁡iai\max_j w_j\le\min_i a_i
5∼65\sim 6 10910^9
77 10310^3 10610^6 无
88 10910^9
9∼109\sim 10 10610^6