索多岛(Sodor)可以通过桥梁与英格兰相连。
由于索多岛和英格兰相距遥远,存在多条(恰好 $n$ 条)通过一座或多座桥梁连接两地的路线。具体来说,路线 $i$ 通过 $k_i$ ($k_i \ge 1$) 座桥梁连接索多岛和英格兰。我们将路线 $i$ 的第 $j$ 座桥梁(从索多岛向英格兰计数)记为 $B[i, j]$。下图展示了 $n=2$ 条路线和五座桥梁的情况,其中 $k_1 = 2$,$k_2 = 3$。
图 1:两条路线和五座桥梁
对于一条路线中任意两座相邻的桥梁 $B[i, j]$ 和 $B[i, j+1]$(其中 $j+1 \le k_i$),它们的连接处是一个仅作为两座桥梁连接点的小岛。如图所示,连接索多岛和英格兰的路线恰好有 $n$ 条,因为桥梁互不相交,且所有连接点也各不相同。特别地,如果路线 $i$ 中的任何一座桥梁受损,则路线 $i$ 无法用于往返索多岛和英格兰。
由于该地区近期发生地震,一些桥梁可能遭受严重损坏并变得无法使用。目前我们无法确切知道哪些桥梁在地震中幸存,哪些被摧毁。得益于地震前对桥梁进行的检查,我们已知每座桥梁在地震后仍然完好的确切概率。设 $p[i, j]$ 为桥梁 $B[i, j]$ 在地震后仍然完好的概率($0 < p[i, j] < 1$)。假设各桥梁是否完好的事件相互独立。
我们想要知道索多岛和英格兰之间是否仍然存在通路。然而,确定一座桥梁是否完好是一项昂贵的操作,因为需要派遣大型检查队通过直升机和船只前往,因此我们希望最小化检查次数。使用最优的检查序列(即最小化期望检查次数),我们直到确定索多岛和英格兰之间是否仍有安全路线为止,所必须执行的检查次数的期望值是多少?
输入格式
第一行包含一个整数 $n$,表示路线的数量($2 \le n \le 1000$)。
接下来的 $n$ 行包含每条路线的信息。第 $i$ 行以一个整数 $k_i$ 开头,表示第 $i$ 条路线中的桥梁数量($1 \le k_i \le 1000$)。随后是 $k_i$ 个整数,标记为 $q[i, j]$,其中 $1 \le j \le k_i$。每个 $q[i, j]$ 是一个 $1$ 到 $999$ 之间的整数(包含边界),表示 $p[i, j] = q[i, j]/1000$。
输出格式
输出最优检查序列下检查次数的期望值。如果你的答案与标准答案的相对误差或绝对误差在 $10^{-9}$ 以内,则被视为正确。
样例
样例输入 1
2 3 900 900 900 2 100 100
样例输出 1
3.0081
样例输入 2
3 1 240 1 310 1 50
样例输出 2
2.2144
说明
第一个输入描述了题目描述中讨论的例子。直观地看,路线 1 非常可能完好,因为所有三座桥梁预计都是完好的,而路线 2 最有可能被摧毁。最优策略是检查路线 1 的三座桥梁(以任意顺序,直到路线 1 被判定为安全或受损),然后检查路线 2 的两座桥梁。
对于第二个输入,最优策略是先检查路线 2,然后是路线 1,最后是路线 3(如果需要的话)。