P11829 [TOIP2024] 棲息地分配

Description

有 $n$ 隻貓活動於某個地區,每隻貓各有其棲息地,編號為 $1$ 到 $n$。棲息地之間有 $m$ 條道路連接,道路總數不超過 $2n-4$。第 $i$ 條道路連接第 $a_i$ 個棲息地和第 $b_i$ 個棲息地,貓可以沿著這些道路在棲息地之間**雙向**移動,且不會有兩條不同的道路連接著同一對棲息地。有 $3$ 個動保團體要接管此地區,請你協助將這 $n$ 個棲息地分配給這 $3$ 個團體,滿足以下要求: - 每個棲息地僅由 $1$ 個團體管理,且每個團體需要管理至少 $1$ 個棲息地。每個團體所屬的棲息地之間不一定要連通。 - 為了方便管理,每個團體會移除由該團體負責的棲息地之間的道路。換句話說,若有一條道路連接的兩個棲息地被分配到同一個團體,該道路會被移除。 - 這些道路移除後,剩餘的道路不可以形成「環」,以免貓可能會繞著環奔跑,讓工作人員難以捉捕。也就是說,不可以存在一個兩兩相異的棲息地序列 $v_1,v_2,\ldots, v_k$,滿足 $k \ge 3$,且對於所有 $1\le i < k$,棲息地 $v_i$ 和棲息地 $v_{i+1}$ 都有一條未被移除的道路連接、同時 $v_k$ 和 $v_1$ 也有一條未被移除的道路連接。 舉例,有 $5$ 個棲息地,道路連接如下圖所示 ![](https://cdn.luogu.com.cn/upload/image_hosting/b0pxmz4d.png) 我們可以將第 $3$, $4$, $5$ 個棲息地分配給第 $1$ 個團體,第 $1$ 個棲息地分配給第 $2$ 個團體,第 $2$ 個棲息地分配給第 $3$ 個團體。 移除掉道路後,如下圖所示 ![](https://cdn.luogu.com.cn/upload/image_hosting/pxugxjfr.png) 剩餘道路不存在環,所以這是一種滿足目標的分配方式。 請輸出這 $3$ 個團體應該分別管理哪些棲息地,若有多種分配方式滿足條件,輸出任意一種。

Input Format

> $t$ > $test_1$ > $test_2$ > $\vdots$ > $test_t$ * $t$ 表示測試資料個數。 * $test_i$ 為第 $i$ 筆測試資料。 每一筆測試資料的輸入格式如下: > $n$ $m$ > $a_1$ $b_1$ > $a_2$ $b_2$ > $\vdots$ > $a_m$ $b_m$ * $n$ 為貓的棲息地數量。 * $m$ 為道路數量。 * $a_i, b_i$ 為第 $i$ 條道路連接的棲息地編號。不會有兩條不同的道路連接著同一對棲息地。

Output Format

輸出 $t$ 筆測試資料之答案: > $answer_1$ > $answer_2$ > $\vdots$ > $answer_t$ * $answer_i$ 為第 $i$ 筆測試資料之答案。 每一筆測試資料答案的輸出格式如下 > $k_1$ $c_{1,1}$ $\cdots$ $c_{1,k_1}$ > $k_2$ $c_{2,1}$ $\cdots$ $c_{1,k_2}$ > $k_3$ $c_{3,1}$ $\cdots$ $c_{1,k_3}$ * $k_i$ 為第 $i$ 個團體分配到的棲息地總數。 * $c_{i,j}$ 為第 $i$ 個團體分配到的第 $j$ 個棲息地。 若該筆測試資料不存在所求的分法,請輸出 -1。

Explanation/Hint

### 測資限制 * $1 \le t \le 3\times 10^5$。 * $3 \le n \le 3\times 10^5$。 * $0 \le m \le 2n - 4$。 * $1 \le a_i, b_i \le n$,$a_i \neq b_i$。 * 所有測試資料中,$n$ 的總和不超過 $3\times 10^5$。 ### 評分說明 本題共有四組子任務,條件限制如下所示。 每一組可有一或多筆測試資料,該組所有測試資料皆需答對才會獲得該組分數。 | 子任務 | 分數 | 額外輸入限制 | | :------: | :----: | ------------ | | 1 | $3$ | 輸入滿足 $m = n - 1$,且所有的棲息地連通。 | | 2 | $23$ | 輸入保證存在兩個以上的棲息地互相無法抵達。 | | 3 | $28$ | 輸入滿足所有測試資料中,$n$ 的總和不超過 $500$。 | | 4 | $46$ | 無額外限制。 |