#P6445. 「JOI Open 2014 Day 2」弹球
「JOI Open 2014 Day 2」弹球
题目描述
译自 JOI Open 2014 Day2 T2「ピンボール / Pinball」
Alice 喜欢一款叫做弹球的视频游戏。弹球的规则如下。
弹球的板子是一个有 行和 列的方格网。板子的第一行是板子的顶部,第 行是板子的底部。第 行和第 列的方格用 表示。
一个球会出现在板子第一行的某个方格上,然后垂直地向板子的底部落下。也就是说,如果一个球出现在方格 上,它会经过 ,最后到达底部的 。Alice 成功地击回球时会得到分数。
有一天,Alice 发现很难击回球,因为一个球可能到达底部的任何方格。Alice 决定在板子上适当地放置一些以下的装置,使得底部只有一个方格是球可能到达的。
有 个装置,从 到 编号。每个装置都平行于板子的行。装置 占据了从 到 的方格。因此,它总共覆盖了 个方格。当一个球到达这个装置上的某个方格时,球会被传送到方格 。之后,传送后的球会沿着列 垂直移动。一个装置不会与一个球碰撞超过一次。
她需要在游戏中支付 日元来把装置 放在板子上。她会选择一些装置放在板子上,使得底部只有一个方格是球可能到达的。她想通过合理地放置装置来最小化总花费。
这是 的弹球板子的一个例子。一个球出现在第一行的方格 上。然后,球会移动到 ,并被装置 传送到 。它最后到达底部的方格 。
给定板子的大小和装置的信息,你需要编写一个程序来计算当底部只有一个方格是球可到达的时,放置装置的最小总花费。
输入格式
第一行包含两个用空格分隔的整数 ,表示板子有 行和 列,装置的数量是 。
接下来的 行中的第 行包含四个用空格分隔的整数 ,表示装置 占据了从 到 的方格。装置 总共覆盖了 个方格。装置 会把到达这些方格中的一个的球传送到方格 。放置装置 的花费是 日元。
输出格式
输出一行包含一个整数,表示放置装置的最小总花费,使得底部只有一个方格是球可能到达的。如果不可能放置装置满足这些条件,输出 。
5 6
2 4 3 5
1 2 2 8
3 6 5 2
4 6 4 7
2 4 3 10
25
3 5
2 4 3 10
1 3 1 20
2 5 4 30
-1
数据范围与提示
对于所有输入数据,满足:
- $1 \leq A_{i} \leq C_{i} \leq B_{i} \leq N\ (1 \leq i \leq M)$
详细子任务附加限制及分值如下表所示。
子任务 | 附加限制 | 分值 |
---|---|---|
无附加限制 |