徐老师的采矿路线
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目描述
徐老师最近在玩 《星际争霸》
在星际争霸中,最基础的资源就是 金矿,徐老师需要不断的派出采矿车去采集金矿,才能发展自己的基地
而今天徐老师设计了一张新的地图,这张地图上一共有 个资源点,其中有 个资源点是 金矿,并且这张图一共有 条双向道路连通所有资源点,其中第 条道路连接了 两个编号的资源点,表示 和 两个资源点可以通过这条道路互相连通,其中 每次 经过这条道路需要耗费采矿车 点耐久度。
徐老师会派出一台 超级无敌plus加强版采矿车 在这个地图上采集金矿
但是这台采矿车的运行逻辑非常奇怪,它会随机生成一个采矿序列(即将 个金矿随机排列成一个队列 ),然后它会直接传送到 资源点处,接着按照 $Q_1 \rightarrow Q_2 \rightarrow Q_3 \rightarrow ... \rightarrow Q_m$ 的顺序依次采矿。
由于这台采矿车是 超级无敌plus加强版,所以它只要一到达资源点,就会瞬间采集完这个资源点的所有资源,且不会消耗任何耐久度。
并且为了测试这台采矿车的情况,徐老师会对地图进行一共 次修改:
每次修改会给定一个资源点的编号 和修改系数 ,然后地图会自动将 所有 和 相连的道路消耗的耐久度
现在徐老师想知道,每次进行修改操作以后,这台采矿车在他设计的地图上采集完所有 金矿 后,消耗耐久度的期望是多少?
P.S. 以下是你 可能 会需要用到的一些知识点
一、关于期望
期望值是随机试验在同样的机会下重复多次的结果计算出的等同“期望”的平均值。需要注意的是,期望值并不一定等同于常识中的“期望”——“期望值”也许与每一个结果都不相等。(换句话说,期望值是该变量输出值的平均数。期望值并不一定包含于变量的输出值集合里。)
常见的期望计算方式一:,以掷骰子为例,投出 的概率均为 ,那么投一次骰子的期望点数为 $1 * \frac{1}{6} + 2 * \frac{1}{6} + 3 * \frac{1}{6} + 4 * \frac{1}{6} + 5 * \frac{1}{6} + 6 * \frac{1}{6}= 3.5$
常见的期望计算方式二:,以掷骰子为例,,一共有 种可能性,事件分别为 ,方案数是 6 ,所以投一次骰子的期望点数为
二、 如果你需要计算除法并取模,你可以简单的使用费马小定理:
输入格式
输入第一行包含两个整数 含义如题
接下来 行,每行三个整数 描述一条双向道路,表示这条道路连接 两条个资源点,通过这条道路需要消耗 点耐久
接下来一行包含 个整数,分别表示 金矿 的资源点编号
接下来一行包含一个整数 ,表示修改次数
接下来 行,每行包含两个整数 ,表示本次修改的资源点编号和修改系数
输出格式
输出 行,每行包含一个整数,表示本次修改操作以后,采矿车消耗耐久度的期望,由于期望值过大,所以将期望值对 取模
数据范围
| 测试点编号 | 特殊限制 |
|---|---|
| 修改操作只在叶子上 | |
| 无 |
对于所有数据保证:$1 \leq n \leq 5 * 10^5,m \leq n, 1 \leq T \leq 5 * 10^5, 0 \leq w,k \leq 10^9$
样例输入1
4 3
1 2 1
1 3 2
3 4 3
2 3 4
4
1 0
1 3
4 1
1 5
样例输出1
8
16
333333353
666666702
样例解释1
对于第一次修改操作,可能产生的 有 2 3 4,2 4 3,3 2 4,3 4 2,4 2 3,4 3 2这 种可能
对于 2 3 4 来说,从 消耗耐久度 ,从 消耗耐久度 ,一共消耗耐久度
上述 种方案消耗的耐久度分别为 ,所以期望值为
对于第二次修改操作,可能产生的 有 2 3 4,2 4 3,3 2 4,3 4 2,4 2 3,4 3 2这 种可能
对于 2 3 4 来说,从 消耗耐久度 ,从 消耗耐久度 ,一共消耗耐久度
对于 2 4 3 来说,从 消耗耐久度 ,从 消耗耐久度 ,一共消耗耐久度
对于 3 2 4 来说,从 消耗耐久度 ,从 消耗耐久度 ,一共消耗耐久度
上述 种方案消耗的耐久度分别为 ,所以期望值为