#P13597. 『GTOI - 1D』回归空白
『GTOI - 1D』回归空白
题目背景
就算自身将浸于无边无际的悲叹
也要回归空白 空白的未来……
题目描述
泠珞有一个有 个节点的无根树,第 条边连接了第 个节点和第 个节点,第 个节点上有一个正整数 。
有时树上的数会发生变化,第 条边两端的节点上的数字会发生交换,即 会与 互换。
有时泠珞会问你,如果一开始只有从节点 到节点 的简单路径上的节点是白色的,其他节点是蓝色的,执行下面的步骤直到所有节点都变成白色,执行步骤次数的期望是多少?
随机选择一个蓝色节点 和一个白色节点 ,选择每个节点的概率与节点上的数字成正比,把节点 到节点 的简单路径上的所有节点涂为白色。
具体的,如果第 个节点是白色的,选择他的概率是
如果第 个节点是蓝色的,选择他的概率是
其中 代表第 个节点的颜色,为 表示白色,为 表示蓝色。
因为出题人的刻意设计,你要告诉泠珞答案 的结果。
你能正确地回答泠珞的每一个问题吗?
输入格式
第一行包含两个正整数 ,表示树的结点数和操作总数。
第二行包含 个正整数,第 个正整数为 ,表示树上第 个节点上的数字。
接下来的 行,第 行包含两个正整数 ,描述了树上的一条边 。
接下来 行每行表示一次修改或询问。首先读入一个正整数 表示指令类型:
- 若 ,接下来一个正整数 表示交换第 条边两端的节点上的数字 与 。
- 若 ,接下来两个正整数 表示泠珞的一次询问。
输出格式
对于每次询问,输出一行一个整数,表示答案。
5 5
1 2 3 4 5
1 2
1 3
2 4
2 5
2 1 5
2 3 3
1 1
2 4 5
2 1 3
2
719696977
800000007
700000007
提示
【样例解释】
样例中后三个询问的答案写成分数形式分别是 、 和 。
【数据范围】
本题采用捆绑测试。
特殊性质 | 分数 | ||
---|---|---|---|
无 | |||
, | |||
保证询问中 | |||
无 | |||
对于所有数据,保证:,,输入的图是一棵树,,,,询问中 ,修改中 。
【提示】
请注意常数因子对程序效率的影响。