QOJ.ac

QOJ

Time Limit: 2.0 s Memory Limit: 64 MB Total points: 100

#17903. Laser Intensification

Statistics

苏菲在一家激光工厂工作,该工厂目前正在引入一种新型激光增强器。该设备是一个网格,网格中的每个节点都可以接收和发射光子:对于从左侧或下方接收到的每个光子,它会向右和向上各发射一个光子,这些光子将被相应方向上的节点接收(如果该方向上没有节点,则光子会丢失)。不幸的是,工业化规模的生产远非完美,网格中的一些节点是有缺陷的:它们既不接收也不发射光子。更具体地说:我们知道某些节点是确定有缺陷的,而其他每个节点都有 $1 - p$ 的概率是有缺陷的。幸运的是,在生产过程中通过适当改变压力可以调整 $p$ 的精确值。苏菲的任务是计算 $p$ 的值,使得向网格左下角节点发射的单个光子,在期望上能让网格右上角接收到 $k$ 个光子,或者确定这是不可能的。请在这项任务中帮助她。

注意:如果右上角的节点是有缺陷的,那么它不会接收到任何光子。

输入格式

输入的第一行包含四个整数 $w, h, n, k$($1 \le w, h \le 5\,000$,$0 \le n \le 50$,$1 \le k \le 10^{10000}$),分别表示:网格的尺寸(宽度和高度)、确定有缺陷的节点数量,以及节点 $(w - 1, h - 1)$ 期望接收到的光子数量。

接下来的 $n$ 行包含确定有缺陷的节点的描述,每行一个。在这些行中,每行包含两个整数 $x, y$($0 \le x < w$,$0 \le y < h$),表示该缺陷节点的坐标。所有这些节点两两不同。

输出格式

你应该输出一个实数:所求的概率 $p$。如果存在这样的概率,且绝对误差或相对误差不超过 $10^{-6}$,则答案被视为正确。如果不存在这样的概率,你应该输出 $-1$。如果确实不存在这样的概率,输出 $-1$ 将被视为正确。

样例

输入样例 1

4 4 2 5
0 3
1 1

输出样例 1

0.953069489

输入样例 2

3 4 1 10
0 1

输出样例 2

-1

说明

在样例 1 中,情况如下图所示:光子从标记为 Start 的网格节点开始,而光子传感器位于标记为 Finish 的网格节点。

在样例 2 中,即使 $p = 1$,也只有 4 个光子能到达右上角。

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.