[CTS2019] 氪金手游

题目描述

小刘同学是一个喜欢氪金手游的男孩子。 他最近迷上了一个新游戏,游戏的内容就是不断地抽卡。现在已知: - 卡池里总共有 $N$ 种卡,第 $i$ 种卡有一个权值 $W_i$,小刘同学不知道 $W_i$ 具体的值是什么。但是他通过和网友交流,他了解到 $W_i$ 服从一个分布。 - 具体地,对每个 $i$,小刘了解到三个参数 $p_{i,1},p_{i,2},p_{i,3}$,$W_i$ 将会以 $p_{i,j}$ 的概率取值为 $j$,保证 $p_{i,1}+p_{i,2}+p_{i,3}=1$。 小刘开始玩游戏了,他每次会氪一元钱来抽一张卡,其中抽到卡 $i$ 的概率为: $$\frac{W_i}{\sum_j W_j}$$ 小刘会不停地抽卡,**直到**他手里集齐了全部 $N$ 种卡。 抽卡结束之后,服务器记录下来了小刘**第一次**得到每张卡的时间 $T_i$。游戏公司在这里设置了一个彩蛋:公司准备了 $N-1$ 个二元组 $(u_i,v_i)$,如果对任意的 $i$,成立 $T_{u_i}<T_{v_i}$,那么游戏公司就会认为小刘是极其幸运的,从而送给他一个橱柜的手办作为幸运大奖。 游戏公司为了降低获奖概率,它准备的这些 $(u_i,v_i)$ 满足这样一个性质:对于任意的 $\varnothing\ne S\subsetneq\{1,2,\ldots,N\}$,总能找到 $(u_i,v_i)$ 满足:$u_i\in S,v_i\notin S$ **或者** $u_i\notin S,v_i\in S$。 请你求出小刘同学能够得到幸运大奖的概率,可以保证结果是一个有理数,请输出它对 $998244353$ 取模的结果。

输入输出格式

输入格式


第一行一个整数 $N$,表示卡的种类数。 接下来 $N$ 行,每行三个整数 $a_{i,1},a_{i,2},a_{i,3}$,而题目给出的 $p_{i,j}=\frac{a_{i,j}}{a_{i,1}+a_{i,2}+a_{i,3}}$。 接下来 $N-1$ 行,每行两个整数 $u_i,v_i$,描述一个二元组(意义见题目描述)。

输出格式


输出一行一个整数,表示所求概率对 $998244353$ 取模的结果。

输入输出样例

输入样例 #1

2
0 0 1
1 1 0
1 2

输出样例 #1

524078286

说明

#### 样例 1 解释 $W_2$ 以 $\frac 12$ 的概率取 $1$ 或者 $2$: - 如果 $W_2=1$,那么 $T_1<T_2$ 的概率为 $\frac 34$。 - 否则 $W_2=2$,$T_1<T_2$ 的概率为 $\frac 35$。 综合所有情况答案为 $\frac 12\left(\frac 34+\frac 35\right)=\frac{27}{40}$,你可以验证它对 $998244353$ 取模的结果确实是所给答案。 #### 测试数据约定 对于全部的测试数据,保证 $N\le 1000$,$a_{i,j}\le 10^6$。 - $20$ 分的数据,$N\le 15$。 - $15$ 分的数据,$N\le 200$,且每个限制保证 $|u_i−v_i|=1$。 - $20$ 分的数据,$N\le 1000$,且每个限制保证 $|u_i−v_i|=1$。 - $15$ 分的数据,$N\le 200$。 - $30$ 分的数据,无特殊限制。