給定一張有 $n$ 個點、$m$ 條邊的無向圖 $G = (V, E)$。
現在給定根節點的位置 $r$,以及每個節點 $v \in V$ 所需的入度 $d_v$,請你將 $G$ 中的每條邊指定方向,使得圖變成一張有向無環圖(DAG),並滿足以下條件:
在 DAG 中,根節點是指一個節點,從它出發可以沿著有向邊到達圖中所有其他節點。
輸入的第一行包含三個整數 $n, m$ 和 $r$,分別代表節點數、邊數,以及根節點的編號。
第二行包含 $n$ 個整數 $d_1, d_2, \dots, d_n$,其中 $d_i$ 表示節點 $i$ 的目標入度。
接下來的 $m$ 行中,每行包含兩個整數 $u_i$ 和 $v_i$,表示在節點 $u_i$ 和 $v_i$ 之間存在一條無向邊。
所有節點的編號皆為 1-based(從 1 開始)。
如果不存在任何合法的邊方向指定方式,請輸出 "NO"
(不含引號)。
如果存在多種合法的邊方向指定方式,請輸出 "MULTIPLE"
(不含引號)。
如果僅有唯一一種合法的邊方向指定方式,請輸出 "YES"
(不含引號),接著輸出 $m$ 行。
每行包含兩個整數 $u$ 和 $v$,表示對應的無向邊被定向為從節點 $u$ 指向節點 $v$ 的有向邊。
輸出的邊的順序必須與輸入中的邊的順序完全一致。
4 6 1 0 1 3 2 1 2 4 2 1 3 3 2 4 1 3 4
YES 1 2 2 4 1 3 2 3 1 4 4 3
5 7 4 3 2 1 0 1 5 4 4 3 3 2 1 5 1 3 2 1 2 4
YES 4 5 4 3 3 2 5 1 3 1 2 1 4 2
輸出的邊方向指定方式滿足所有條件:
輸出的邊方向指定方式滿足所有條件:
YTP 2025 高中組程式挑戰營 p5
No. | Testdata Range | Constraints | Score |
---|---|---|---|
1 | 0~1 | 範例測試資料 | 0 |
2 | 0~5 | $n, m\leq 20$ 且保證有唯一一組解 | 2 |
3 | 0~11 | 保證有唯一一組解 | 5 |
4 | 0~24 | 無額外限制 | 8 |