P12971 [CCO 2025] Shopping Deals

题目描述

你正在一家出售 $M$ 件商品的商店购物。商店的布局可以建模为一个二维平面,其中第 $i$ 件商品位于点 $(x_i, y_i)$,价格为 $p_i$。 商店提供 $N$ 种购物优惠。第 $i$ 种购物优惠由点 $(a_i, b_i)$ 指定,花费 $c_i$ 的代价,你可以选择以下四个区域之一,获得该区域内所有商品各一件: - 满足 $x \leq a_i$ 且 $y \leq b_i$ 的点 $(x, y)$ 所在区域 - 满足 $x \leq a_i$ 且 $y \geq b_i$ 的点 $(x, y)$ 所在区域 - 满足 $x \geq a_i$ 且 $y \leq b_i$ 的点 $(x, y)$ 所在区域 - 满足 $x \geq a_i$ 且 $y \geq b_i$ 的点 $(x, y)$ 所在区域 每种购物优惠最多只能使用一次。商品也可以单独购买,只需支付其对应的价格 $p_i$。 你需要获取商店中的每件商品至少一件。求达成该目标所需支付的最小总成本。

输入格式

第一行输入包含两个以空格分隔的整数 $N$ 和 $M$。 接下来 $N$ 行每行包含三个以空格分隔的整数 $a_i$、$b_i$ 和 $c_i$($-10^9 \leq a_i, b_i \leq 10^9$,$1 \leq c_i \leq 10^9$)。 随后 $M$ 行每行包含三个以空格分隔的整数 $x_i$、$y_i$ 和 $p_i$($-10^9 \leq x_i, y_i \leq 10^9$,$1 \leq p_i \leq 10^9$)。

输出格式

输出一行,表示获取所有商品至少一件所需的最小总成本。

说明/提示

**样例 1 解释** 使用第一种购物优惠,选择区域 $\{(x, y) \mid x \leq 1, y \geq 1\}$ 获取第二件商品。然后单独购买第 1、3、4 件商品。总成本为 $3 + (2 + 4 + 3) = 12$。 以下表格展示了 25 分的分布情况: | 分值 | $N$ 的范围 | $M$ 的范围 | 额外约束条件 | |:------:|:-----------------:|:------------------:|:---------------------------------------------------------------------------:| | 1 分 | $1 \leq N \leq 8$ | $1 \leq M \leq 20$ | 无 | | 3 分 | $1 \leq N \leq 70$ | $1 \leq M \leq 20$ | 无 | | 3 分 | $1 \leq N \leq 70$ | $1 \leq M \leq 70$ | 无 | | 4 分 | $1 < N \leq 100$ | $1 < M \leq 100000$ | 所有 $(a_i, b_i)$ 和 $(x_j, y_j)$ 点的 $x$ 或 $y$ 坐标互不相同 | | 2 分 | $1 \leq N \leq 100$ | $1 \leq M \leq 100000$ | 无 | | 8 分 | $1 \leq N \leq 1000$ | $1 \leq M \leq 100000$ | 所有 $(a_i, b_i)$ 和 $(x_j, y_j)$ 点的 $x$ 或 $y$ 坐标互不相同 | | 4 分 | $1 \leq N \leq 1000$ | $1 \leq M \leq 100000$ | 无 | 翻译由 DeepSeek V3 完成