QOJ.ac

QOJ

حد الوقت: 12 s حد الذاكرة: 256 MB مجموع النقاط: 100

#10631. 流星

الإحصائيات

字节国(Bajtocja)是一个美丽、无限但非常平坦的一维国度,可以将其视为数轴。字节国即将迎来一场流星雨。得益于字节国气象学家的高明预测,已知将会有恰好 $n$ 颗流星落下。此外,每一颗流星落下时间和地点都是已知的:第 $i$ 颗流星将在时刻 $t_i$ 落在点 $x_i$。

现在是时刻 $0$,Bajtazar 位于点 $0$。由于流星很危险,且 Bajtazar 非常担心他随身携带的笔记本电脑中的重要数据,他希望避免与任何一颗流星发生“亲密接触”。更准确地说,Bajtazar 希望最大化他与最近一颗落下流星之间的距离(每一项距离均在流星落下的时刻测量)。

假设 Bajtazar 的奔跑速度最大为每小时一个单位距离(向左或向右),且他永远不会感到疲劳。他也可以瞬间(且多次)改变方向。

请帮助 Bajtazar 保护自己和他的笔记本电脑。编写一个程序,读取有关落下流星的信息,并确定 Bajtazar 在最优策略下,与最近流星的距离至少能保持多远。

输入格式

第一行包含一个整数 $n$ ($1 \le n \le 200\,000$),表示落下流星的数量。接下来的 $n$ 行,每行描述一颗流星。每颗流星的描述由两个整数 $t_i$ 和 $x_i$ ($0 \le t_i \le 10^9$, $-10^9 \le x_i \le 10^9$) 组成,分别表示第 $i$ 颗流星落下的时刻和位置。

输出格式

你的程序应输出一个实数,保留一位小数,表示在最优解中 Bajtazar 与最近落下流星的距离。

如果结果是一个整数,可以输出带一位小数的零,也可以不带小数点。

样例

输入格式 1

3
5 -3
7 6
4 -4

输出格式 1

5.5

说明

Bajtazar 可以开始以 $\frac{1}{2}$ 的速度向右跑,以便在时刻 $4$ 到达位置 $2$(此时距离第三颗流星 $6$ 个单位),并在时刻 $5$ 到达位置 $2\frac{1}{2}$(此时距离第一颗流星 $5\frac{1}{2}$ 个单位)。此时,Bajtazar 应折返并以最大速度 $1$ 向左跑,以便在时刻 $7$ 到达位置 $\frac{1}{2}$(距离第二颗流星 $5\frac{1}{2}$ 个单位)。

通过这种方式,Bajtazar 在整个过程中与落下流星的距离始终保持至少 $5\frac{1}{2}$;不可能保持更大的距离。

评估测试

以下是部分测试用例及其对应的正确答案:

  1. $n = 5, t_i = i, x_i = 2i - 6$;答案为 $1.5$。
  2. $n = 10, t_i = 100, x_i = (-1)^i \cdot i^2$;答案为 $19$。
  3. $n = 1000, t_i = 4000, x_i = 8i - 4004$;答案为 $4$。
  4. $n = 200\,000, t_i = 5000i, x_i = 100\,000$;答案为 $105\,000$。

子任务

测试集分为以下子任务。每个子任务由一组或多组测试数据组成。

子任务 附加条件 分值
1 对于所有 $i$,$t_i \le 1000$ 20
2 所有 $t_i$ 的值相等 10
3 $n \le 1000$ 20
4 无附加限制 50

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.