QOJ.ac

QOJ

Limite de temps : 1 s Limite de mémoire : 512 MB Points totaux : 100

#3357. 移动游戏

Statistiques

手机游戏在移动设备上的流行程度呈爆炸式增长,你投身于这股浪潮中,正在开发一种警察抓小偷类型的游戏。一些玩家控制警察,而另一些玩家控制小偷。警察玩家的目标是抓住小偷,而小偷则试图逃脱。在开发过程中,你遇到了一个问题。手机上的更新频率存在明显的延迟。你获取玩家位置更新的频率可能低至每秒一次。由于得分取决于警察抓住小偷的时间,你需要计算出这个确切的时间。

警察和小偷在游戏世界中被建模为矩形,如果他们的矩形重叠,则表示警察抓住了小偷。已知矩形的大小,以及它们在时间 $0$ 和时间 $1$ 的位置。你的程序需要计算这些矩形在时间区间 $[0, 1]$ 内是否发生过重叠,如果发生过,请计算出它们第一次发生重叠的时间。

输入格式

输入的第一行包含一个整数 $T$,表示测试用例的数量。 每个测试用例包含两行,每行包含 $6$ 个数字。第一行包含整数 $W_1, H_1, X_{start1}, Y_{start1}, X_{end1}$ 和 $Y_{end1}$。$W$ 和 $H$ 分别描述警察矩形的宽度和高度。$X_{start1}$ 和 $Y_{start1}$ 描述警察的起始点(左上角),而 $X_{end1}$ 和 $Y_{end1}$ 描述他的终点(时间 $1$ 时所在的位置)。第二行包含六个整数 $W_2, H_2, X_{start2}, Y_{start2}, X_{end2}$ 和 $Y_{end2}$,对应小偷的相应数据。

输出格式

对于每个测试用例,输出一行,包含一个数字,即发生碰撞的最早时刻(一个介于 $0$ 和 $1$ 之间的实数,包含 $0$ 和 $1$)。如果没有发生碰撞,则输出 No Collision

数据范围

  • $0 < T \le 100$
  • $0 < W_i, H_i \le 100$
  • $0 \le X_{starti}, Y_{starti}, X_{endi}, Y_{endi} \le 10000$
  • 坐标系中 $x$ 值从左向右增加,$y$ 值从上向下增加。
  • 如果两个矩形重叠,或者它们的边/角接触,则视为发生碰撞。
  • 假设警察和小偷都沿直线移动。
  • 允许与正确答案有最多 $10^{-7}$ 的绝对或相对误差。

样例

样例输入 1

3
2 2 0 0 0 8
2 2 2 10 2 2
5 5 10 10 0 0
1 4 0 0 10 0
4 4 3 9 10 18
3 3 8 14 15 23

样例输出 1

0.5
0.6
No Collision

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.