QOJ.ac

QOJ

时间限制: 15 s 内存限制: 1024 MB 总分: 100

#4685. 瓷砖切割

统计

Youssef 是一位摩洛哥瓷砖安装工,专门从事如图所示的马赛克拼贴工作。他手头有各种尺寸的矩形瓷砖,且所有瓷砖的尺寸均为整数厘米。当 Youssef 需要平行四边形瓷砖时,他会从现有的瓷砖中切割出来。为了简化工作,他发明了一种瓷砖切割机,在切割面上叠加了一个厘米网格,以引导瓷砖上的切割。由于机器的局限性、审美需求以及 Youssef 对瓷砖浪费的厌恶,以下规则决定了可能的切割方式:

  1. 待切割的矩形瓷砖必须放置在切割面的左下角,且边缘必须与网格线对齐。
  2. 切割刀片可以沿着连接瓷砖边界上两个不同网格点的任何直线进行切割,只要这些点位于相邻的边界边上。
  3. 所得平行四边形瓷砖的四个角必须位于原始矩形瓷砖的四条边上。
  4. 平行四边形瓷砖的任何边都不能与矩形瓷砖的边重合。

图 J.1 展示了在这些限制条件下,从矩形瓷砖中切割出面积为 4 平方厘米的平行四边形瓷砖的八种不同方式。

图 J.1:切割面积为 4 的平行四边形的八种不同方式。

Youssef 需要切割面积在 $a_{\text{lo}}$ 和 $a_{\text{hi}}$ 之间的所有瓷砖。现在他想知道,在这个范围内,对于哪个面积 $a$,他可以切割出数量最多的不同瓷砖?

输入格式

输入包含多个测试用例。第一行包含一个整数 $n$ ($1 \le n \le 500$),表示测试用例的数量。接下来的 $n$ 行,每行包含两个整数 $a_{\text{lo}}, a_{\text{hi}}$ ($1 \le a_{\text{lo}} \le a_{\text{hi}} \le 500\,000$),表示瓷砖面积的范围。

输出格式

对于每个测试用例 $a_{\text{lo}}, a_{\text{hi}}$,输出一个在 $a_{\text{lo}}$ 和 $a_{\text{hi}}$ 之间的面积值 $a$,使得切割出面积为 $a$ 的平行四边形的方法数最多,同时输出该平行四边形可以被切割出的不同方法数 $w$。如果存在多个可能的 $a$ 值,请输出最小的一个。

样例

样例输入 1

2
4 4
2 6

样例输出 1

4 8
6 20

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.