QOJ.ac

QOJ

Time Limit: 3 s Memory Limit: 1024 MB Total points: 100

#15823. Slabstones Rearrangement

统计

Babara 有一个花园。她购买了一些矩形石板,并规划了花园中所有石板的初始摆放位置。花园的形状是矩形的。石板的每一条边都必须与花园的某一条边平行或垂直。花园的左、右、底、顶边界上分别有石板与之接触。所有石板都位于花园内部。同时,在初始摆放中,没有任何石板重叠。Babara 每天都喜欢在石板之间跳跃。然而,Babara 想要重新设计她的花园,以便为其他用途腾出空间。她想知道,如果石板只能水平移动(即向左或向右移动)而不能改变其垂直坐标,那么这些石板能被压缩得多么紧凑。此外,如果任意两块石板的垂直维度有重叠(不包括端点接触的情况),则它们在水平方向上的相对位置必须保持不变。也就是说,如果石板 R 和 Q 的垂直维度重叠,且在移动前石板 Q 位于石板 R 的右侧,那么移动后 Q 仍必须位于 R 的右侧,反之亦然。此外,在石板重排过程中,如果两块石板的垂直维度重叠,它们之间必须保持最小的水平间距。移动后,石板之间不得重叠。不过,它们的水平边缘可以接触。现在请你帮助 Babara 计算出可以腾出的最大面积。

输入格式

第一行包含一个整数,表示测试用例的数量。随后是各测试用例的输入数据。每个测试用例的第一行包含两个整数。第一个整数表示矩形石板的数量,第二个整数表示两块石板之间的最小水平间距。接下来的每一行包含四个整数。前两个整数指定了石板在花园中左下角的初始 $x$ 和 $y$ 坐标。后两个整数指定了石板右上角的初始 $x$ 和 $y$ 坐标。相邻的数字之间用空格分隔。

输出格式

每个测试用例的输出占一行。它包含通过移动石板所能节省的最大面积。如果无法节省任何面积,则输出零。

数据范围

  • 测试用例数量不超过 32。
  • 所有坐标均为 32 位无符号整数。
  • 花园的面积不超过 32 位无符号整数的最大值。
  • 石板的宽度和长度均为 32 位无符号整数,且必须大于零。
  • 任意两块石板之间的最小水平间距为 32 位无符号整数,且必须大于零。
  • 石板数量在 4 到 100 之间。

样例

输入 1

2
4 2
2 6 4 12
8 4 16 8
7 10 11 16
18 4 20 18
6 4
2 5 4 11
2 14 6 17
7 10 10 16
9 4 16 7
11 11 16 14
18 4 20 18

输出 1

28
0

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.