出題人是懶的,數據是隨的,題目是簡單的,做法是顯然的。凡是做題,隨便搞搞就過了。
你是大魚,因為你和水很融洽,所以你在水裡跑得賊快,於是你每天在水裡跑來跑去。
直到有一天,你醒來發現你在一個由若干房間和水道組成的迷宮裡。你輕鬆地得到了這個迷宮的地圖:
你發現這個迷宮可以抽象成一個無向連通圖,沒有重邊自環,且每條邊最多在一個簡單環上。房間可以看做點,編號從 $1$ 到 $n$,水道可以看做邊,直接連接著兩個房間。
迷宮的路錯綜複雜,但是你一眼望穿了地圖。雖然你知道怎麼出去,但是你要完成你光榮的使命——卷,所以出去的事情另想辦法。你發現你在卷的時候是難以看清路的,於是你選擇了亂跑,也就是隨機遊走。
形式化地說,你會沿著當前房間連出的所有水道中等機率選擇一條並且直接跑到這條水道的另一個端點(在跑的期間你要保持一直在這個水道上)。
你知道你一點都不卷,且你相信自己很歐,所以你把從迷宮出去的重擔交給了 rp,把衝擊的 $151$ 題的小目標,留給了你自己。
不過,你並不知道你一開始在哪個房間。所以你想知道對於每個房間,如果你一開始在那裡,從開始隨機遊走直到到達一個出口,期望經過多少條水道。
當然,根據慣例,我們要對這個期望對 $998244353$ 取模。可以證明,答案一定可以表示為有理數 $\frac{a}{b}$,你只要輸出 $a \times b^{-1} \pmod{998244353}$ 即可。
輸入格式
第一行三個正整數 $n, m, C$,分別表示房間的個數,水道的條數,出口的個數。
第二行 $C$ 個正整數 $c_i$,表示出口的編號,保證編號兩兩不相同且每個編號都代表著一個房間。
下面 $m$ 行,每行兩個正整數 $u_i, v_i$,表示一條水道。
輸出格式
共 $n$ 行,每行一個範圍在 $[0, 998244353)$ 的非負整數,表示在編號為 $i$ 點出發,經過水道條數的期望。
範例
範例 1 輸入
6 7 1 1 1 2 2 3 2 4 3 4 2 5 2 6 5 6
範例 1 輸出
0 13 15 15 15 15
範例 2 輸入
6 7 1 3 6 4 4 5 5 6 4 1 1 2 2 3 3 4
範例 2 輸出
7 499122181 0 499122184 499122186 499122186
範例 3 輸入
20 24 3 15 20 10 17 13 13 20 20 17 2 20 13 9 9 19 19 13 17 4 4 3 3 17 13 1 1 7 7 13 15 1 8 20 16 4 18 9 4 6 6 5 5 4 11 13 10 3 12 7 14 9
範例 3 輸出
873463818 1 873463818 499122191 499122193 499122193 499122189 1 790276796 0 124780557 499122190 124780556 790276797 0 499122192 124780554 790276797 457528677 0
子任務
由於某些原因,本題數據按類似對於每個點隨機選一個編號比自己小的點連邊的方法生成。這樣的數據比較隨機,很大程度上,可以忽略計算過程中,計算 $0$ 的逆元的情況。
對於所有數據,都有 $2 \leq n \leq 10^5, 1 \leq m \leq 1.5 \times 10^5, 1 \leq C \leq n$。
對於 $5\%$ 的部分分,有 $n \leq 300$。
對於另外 $5\%$ 的部分分,保證抽象出的圖是一棵樹。
對於另外 $10\%$ 的部分分,保證抽象出的圖的每個環上至少有一個出口。
對於另外 $40\%$ 的部分分,保證 $m = n$。