#P16112. [2026年山东集训一轮]蹦蹦炸弹
[2026年山东集训一轮]蹦蹦炸弹
题目描述
有一个 的正方形点阵,有 个玩家同时在棋盘上大战小 Y。第 个玩家在棋盘上有自己的领地格点 ,表示第 行、第 列。
为了确保胜利,小 Y 需要使其他 个玩家的领地所在的格点都被轰炸。为此,他有两种轰炸方式:
- 选择一个格点进行轰炸,需要花费 枚金币;
- 选择以正方形上任意一条边上的一段为底边作等腰直角三角形,允许退化成点,并对在该等腰直角三角形内,包括边界上的格点进行轰炸,需要花费覆盖格点个数的金币。
第二种操作要求等腰直角三角形的三个顶点都是格点,并且三角形完全在正方形内,包括边界。
小 Y 想知道使所有给定格点都被轰炸所需的最小金币数。
输入格式
第一行包含三个正整数 ,分别表示棋盘大小、玩家个数以及轰炸单个格点需要花费的金币数量。
接下来 行,每行包含两个正整数 ,表示第 个玩家的领地在 。
输出格式
输出一个数,表示小 Y 需要花费的最小金币数量。
样例 1 输入
3 10 5
1 3
2 3
2 3
1 1
2 2
1 2
2 3
3 1
3 3
3 1
样例 1 输出
7
数据范围
对于所有数据,保证:
$$1\le n,m\le 5\times 10^4, \qquad 1\le c\le 5, \qquad 1\le x_i,y_i\le n.$$| 测试点 | ||||
|---|---|---|---|---|
| 1,2,3,4 | ||||
| 5,6 | ||||
| 7,8,9,10 | ||||
| 11 | ||||
| 12 | ||||
| 13 | ||||
| 14,15,16 | ||||
| 17,18 | 保证 不在主、副对角线上 | |||
| 19,20 |