#P16097. [Oni2016国家队选拔赛]Network

    ID: 15308 传统题 2000ms 64MiB 尝试: 2 已通过: 1 难度: 8 上传者: 标签>数据结构强连通分量动态规划概率DP数学高斯消元CF2500DAG-DP

[Oni2016国家队选拔赛]Network

题目描述

Artanis 是飞船 Spear of Adun 的指挥官。他需要把一个用单个比特表示的加密消息,从飞船上的计算机发送到 Aiur 星球上的指挥中心计算机。

整个星际计算机网络可以看作一个有向图,包含 VV 个节点和 EE 条有向边。每条边形如

(x,y,p0,p1)(x,y,p_0,p_1)

含义是:计算机 xx 可以把消息发送给计算机 yy;如果发送的是比特 00,它被正确传输的概率为 p0p_0;如果发送的是比特 11,它被正确传输的概率为 p1p_1

一次传输被称为正确,当且仅当接收端得到的比特与发送端发出的比特相同。若传输不正确,则比特会翻转。

当某台计算机收到消息后,它会从自己的所有出边中等概率随机选择一条,并沿该边继续转发消息。

请分别求出:

  1. 初始发送比特 00 时,最终到达 Aiur 指挥中心后仍为 00 的概率;
  2. 初始发送比特 11 时,最终到达 Aiur 指挥中心后仍为 11 的概率。

输入格式

第一行包含两个整数 V,EV,E

接下来 EE 行,每行包含四个数:

x y p0 p1

表示一条从 xxyy 的有向边,以及该边上传输比特 00、比特 11 时分别正确的概率。

输出格式

第一行输出发送比特 00 后最终正确到达的概率。

第二行输出发送比特 11 后最终正确到达的概率。

答案与标准答案的绝对误差不超过 10510^{-5} 即视为正确。

数据范围与限制

  • 1V50001 \le V \le 5000
  • 0E500000 \le E \le 50000
  • 对所有边,0p0,p11.00 \le p_0,p_1 \le 1.0,且输入中的概率最多有两位小数;
  • 不存在大小超过 7070 的点集,使得该点集中任意两个点互相可达;换句话说,每个强连通分量大小不超过 7070
  • 节点编号为 00V1V-1
  • 飞船上的计算机编号为 00,Aiur 指挥中心编号为 V1V-1
  • 节点 V1V-1 的出度为 00,且所有节点都可以到达 V1V-1
  • 对于任意两个不同节点 x,yx,y,至多有一条从 xxyy 的边,也至多有一条从 yyxx 的边;
  • 不存在自环;
  • 对于 2020 分测试,图中不存在两个不同节点 x,yx,y,使得 xx 可达 yyyy 可达 xx,即图无环;
  • 另有 4040 分测试满足 V100V \le 100

样例

输入

4 3
0 1 1.0 0.5
1 2 0.2 1.0
2 3 0.1 0.0

输出

0.8200000
0.0900000

样例解释

若发送比特 11,有一种最终正确到达的过程是:

  • 在边 (01)(0\to 1) 上传输错误,概率为 0.50.5,到达节点 11 时变为比特 00
  • 在边 (12)(1\to 2) 上传输比特 00 正确,概率为 0.20.2,到达节点 22 时仍为比特 00
  • 在边 (23)(2\to 3) 上传输比特 00 错误,概率为 0.90.9,最终又变回比特 11

该过程的概率为

0.5×0.2×0.9=0.09.0.5\times 0.2\times 0.9=0.09.

发送比特 00 时可类似计算。