大過濾器理論(The Great Filter)認為,文明在發展過程中存在若干個重要的劃分階段,各階段之間存在著極難跨越的溝壑,以至於達到最終可以實現星際殖民階段的文明少之又少。這一理論也被認為是費米悖論的一種解釋。
The Great Filter
在本題中,我們認為文明存在 $n$ 個級別,而這 $n$ 個級別又被劃分為 $k$ 個階段。具體地,我們有陣列 $L_0, L_1, \dots, L_k$,滿足 $0 = L_0 < L_1 < \dots < L_k = n$,其中第 $L_{j-1} + 1$ 到第 $L_j$ 個文明級別被認為是處於階段 $j$ 的。
我們認為一張有向圖 $G = (V, E)$ 刻畫了文明可以通過什麼手段達到最終級別。若 $(x, y) \in E$,則說明處於 $x$ 級別的文明可以嘗試進步到 $y$ 級別(注意這裡並不保證 $x < y$!)。特別地,由於大過濾器的存在,設 $x$ 是 $j$ 階段的文明,那麼 $y$ 只可能處於 $j$ 階段或者 $j + 1$ 階段。如果 $y$ 也屬於 $j$ 階段,那麼我們認為這是一次「常規進步」,否則 $y$ 屬於 $j + 1$ 階段,我們認為這是一次「危險進步」。
我們認為現在人類文明所處的級別為 $1$ 級別,我們的目標是達到 $i$ 級別,我們需要規劃一個進步方案。方案可以表示為 $1$ 到 $n$ 的一條路徑,我們如此定義一種方案的困難程度:設計數器初始有 $s = 0$,我們按順序考慮這條路徑,每次發生一次「常規進步」,那麼 $s \leftarrow s + 1$,每次發生一次「危險進步」,那麼 $s \leftarrow s \times 2$;最後的 $s$ 值就是該進步方案的困難程度。
對於每個 $1 \le i \le n$,請你判斷是否存在一種從 $1$ 級別進步至 $i$ 級別的方案,如果存在,那麼請規劃一種方案使得困難程度最小。
輸入格式
第一行輸入三個正整數 $n, m, k$,表示文明的級別數量,圖的邊數,以及文明的階段數。
接下來一行輸入 $k - 1$ 個正整數,表示 $L_1, \dots, L_{k-1}$,如題意所示。
接下來 $m$ 行每行輸入兩個正整數 $x, y$ 表示一條邊。
輸出格式
輸出共 $n$ 行,第 $i$ 行一個整數,表示從 $1$ 級別進化到 $i$ 級別的最小困難程度。由於這個數很大,你只需要輸出其 $\pmod{998244353}$ 的結果即可。如果無法進化到 $i$ 級別,輸出 $-1$。
範例
輸入格式 1
6 6 2 3 1 2 2 3 3 4 4 5 5 6 2 6
輸出格式 1
0 1 2 4 5 2
子任務
對於 100% 的資料,保證 $2 \le k \le n \le 3 \times 10^5$,$1 \le m \le 5 \times 10^5$,$1 \le x, y \le n$。
| 測試點 | 分值 | $n \le$ | $m \le$ | $k \le$ |
|---|---|---|---|---|
| 1 | 10 | $10^2$ | $200$ | $n$ |
| 2 | 15 | $10^5$ | $2 \times 10^5$ | $40$ |
| 3 | 10 | $3 \times 10^5$ | $5 \times 10^5$ | $n$ |
| 4 | 20 | $500$ | $10^3$ | $n$ |
| 5 | 20 | $3 \times 10^4$ | $6 \times 10^4$ | $n$ |
| 6 | 15 | $10^5$ | $2 \times 10^5$ | $n$ |
| 7 | 10 | $3 \times 10^5$ | $5 \times 10^5$ | $n$ |
提示
本題輸入檔案在 10 MB 以內,輸出檔案在 5 MB 以內,請使用較快的輸入輸出方式。注意取模。