QOJ.ac

QOJ

実行時間制限: 60 s メモリ制限: 2048 MB 満点: 100

#5229. 榛子采摘

統計

Boss Rob 在他的院子里(用笛卡尔坐标系表示)种了 $N$ 棵快乐的小榛子树。第 $i$ 棵树位于整数坐标 $(X_i, Y_i)$。现在是收获季节,Rob 想要在树周围设置一些网来收集掉落的榛子。

每个网必须是一个顶点位于格点上的轴对齐矩形。Rob 需要在网与网之间至少留出 $1$ 个单位的空隙,以便他可以在它们之间行走并收集坚果。也就是说,网不能相交、接触或嵌套。每棵树必须严格位于其网内,即距离网的边缘至少 $1$ 个单位。

Boss Rob 可以设置任意数量的网,但他想知道覆盖所有 $N$ 棵树所需的网的总面积最小值。

数据范围

  • $1 \le T \le 160$
  • $1 \le N \le 800,000$
  • $0 \le X_i, Y_i \le 10^9$
  • 给定测试用例中的所有 $(X_i, Y_i)$ 均不相同。

至多有两个测试用例满足 $N > 500,000$。

所有测试用例的 $N$ 之和不超过 $4,000,000$。

输入格式

输入的第一行包含一个整数 $T$,表示测试用例的数量。对于每个测试用例,首先是一行包含一个整数 $N$。接下来有 $N$ 行,第 $i$ 行包含两个空格分隔的整数 $X_i$ 和 $Y_i$。

输出格式

对于第 $i$ 个测试用例,打印一行 "Case #i: ",后跟一个整数,表示根据上述要求覆盖所有树所需的网的总面积最小值。

说明

前两个样例的解决方案如下图所示。

在第一个样例中,最小网面积为 $2\times 2 + 3\times 4 + 2\times 2 = 20$。 在第二个样例中,最小网面积为 $2\times 2 + 4\times 6 = 28$。 在第三个样例中,几乎可以为每棵树单独设置一个网。不幸的是,在 $(2, 2)$ 处的网之间需要至少 $1$ 个单位的空隙以便 Boss Rob 通过。这使得间接地必须使用一个大网来覆盖所有树。

样例

样例输入 1

3
4
0 0
2 1
5 0
0 6
5
10 10
12 10
8 10
5 10
8 8
4
1 1
3 3
0 4
4 6

样例输出 1

Case #1: 20
Case #2: 28
Case #3: 42

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.