#P11736. [集训队互测 2015] 胡策的小树

    ID: 13104 远端评测题 2000ms 256MiB 尝试: 0 已通过: 0 难度: 7 上传者: 标签>2015集训队互测Special Judge期望高斯消元

[集训队互测 2015] 胡策的小树

题目描述

在 OI 界,有一位无人不知无人不晓,OI 水平前无古人后无来者的胡策,江湖人称一眼秒题胡大爷。

胡策最近从一名自称是小 O 的神秘男子那里收到了一棵神奇的小树苗。

这是一棵 nn 个节点的有根树,节点标号为 1,,n1, \dots, n,其中 11 号点为根。

这棵有根树上每个点都有一个权值,点 ii 的权值为 aia_ia1,,ana_1, \dots, a_n 构成了一个 0n10\sim n-1 的排列,且 a1=0a_1=0

胡策大爷十分喜欢猴子,他打算在这棵树上养 nn 只猴子。初始时,每个节点上将放着恰好一只猴子。猴子们十分好动,每过一秒,每只在 ii 节点的猴子会设法往 ii 的父亲节点上跳,有 p(i)p(i) 的概率成功跳到父亲节点;否则跳跃失败,将等概率地随机落到子树 ii 里某个节点上(包括点 ii)。

因为根节点没有父亲,所以 p(1)=0p(1)=0。对于 2in2\leq i\leq n,有 p(i)=ainp(i)=\frac{a_i}{n}

在第 ii 秒,胡策会观察并记录这 nn 只猴子中成功跳上父亲结点的猴子所占的比例 gig_i。胡策认为 g0,,gTg_0, \dots, g_T 的平均值就是这群猴子们生活的幸福指数,为保证准确,其中 TT 为很大很大的值,为 (n+1)999999999999999(n+1)^{99999^{99999^{99999}}}

为了让猴子们的幸福指数的期望更大,胡策又从那名自称是小 O 的神秘男子那里买来了一袋叫“金坷垃”的肥料。如果给这棵有根树掺 xx 克的金坷垃,那么这棵树每个点 ii 的权值将变化成 (ai+x)modn(a_i+x)\bmod n。因为胡策是土豪有钱任性,xx 可以取任意非负整数。

请你告诉胡策,他该掺多少克的金坷垃,才能使猴子们幸福指数的期望最大呢?

输入格式

第一行一个正整数 nn

第二行 nn 个用空格隔开的非负整数,第 ii 个为节点 ii 的父亲节点编号 fif_i。(f1=0f_1=0,对于 i>1i>11fi<i1\leq f_i< i

第三行 nn 个用空格隔开的非负整数,为一个 0n10\sim n-1 的排列,第 ii 个表示 aia_i

输出格式

一行一个实数,表示掺适量的金坷垃时的最大幸福指数期望。

你的答案被认为是正确的当且仅当你的答案与标准答案的绝对误差或相对误差不超过 10910^{-9}

3
0 1 1
0 1 2
0.266666667

提示

  • 对于 10%10\% 的数据:n=2n = 2
  • 对于 20%20\% 的数据:n5n\leq 5
  • 对于 30%30\% 的数据:n100n\leq 100
  • 对于 50%50\% 的数据:n2000n\leq 2000
  • 对于 70%70\% 的数据:n100000n\leq 100000
  • 对于 100%100\% 的数据:2n5000002\leq n\leq 500000

数据保证有一定梯度。

数据都是随机生成的。即:节点 ii 的父亲是从 1i11\sim i-1 中随机选取的,a1ana_1 \dots a_n 是一个 0n10 \sim n-1 的随机排列。