a393: 松鼠吃松果
標籤 :
通過比率 : 3人/5人 ( 60% ) [非即時]
評分方式:
Special

最近更新 : 2020-08-06 17:00

內容

松鼠喜歡吃松果,現在有$N$個小島,以及$M$座小橋,其中橋可以雙向通行,松鼠既不會游泳也不會飛,但他可以通過小橋到每座小島上, 而每座橋上都有一個松果,松鼠想要把所有松果都吃掉,然而每座小橋都只能經過一次,因為走過去後橋就會爆了(松鼠吃太多松果太胖了QAQ)。而在一開始松鼠在編號為$S$的小島上,請問松鼠是否可以吃到所有的松果?如果可以請幫松鼠找出能吃到所有松果的路徑,否則若無法吃到所有松果請輸出"QQ"(不含引號)。

輸入說明

第一行輸入一個正整數$T(T\le 10)$代表測資筆數。

每筆測資第一行輸入兩個正整數$N,M,S(N,M\le 10^5 , 1\le S\le N)$代表島的數量、橋的數量以及起始島嶼編號。

接下來有$M$行每行包含兩個正整數$u_i,v_i(1\le u,v\le N)$代表第$i$座橋連接島嶼$u,v$。

輸出說明

每筆測資輸出一行,若松鼠可以吃到所有松果則輸出$M$個正整數依序為經過的橋的編號(若有多組解請任意輸出一種即可),反之若無法則輸出"QQ"(不含引號)。

範例輸入
7
4 5 2
1 2
2 4
1 4
2 3
4 3
4 5 1
1 2
2 4
1 4
2 3
4 3
4 4 1
1 2
2 4
4 3
1 3
4 6 1
1 2
1 2
2 3
2 3
2 4
4 2
4 2 1
1 2
3 4
4 1 2
1 2
4 1 3
1 2

範例輸出
1 3 5 4 2
QQ
1 2 3 4
1 3 4 5 6 2
QQ
1
QQ
測資資訊:
記憶體限制: 64 MB
公開 測資點#0 (9%): 1.0s , <1K
公開 測資點#1 (9%): 1.0s , <1K
公開 測資點#2 (9%): 1.0s , <1M
公開 測資點#3 (9%): 1.0s , <1M
公開 測資點#4 (9%): 1.0s , <10M
公開 測資點#5 (9%): 1.0s , <10M
公開 測資點#6 (9%): 1.0s , <50M
公開 測資點#7 (9%): 1.0s , <10M
公開 測資點#8 (9%): 1.0s , <10M
公開 測資點#9 (9%): 1.0s , <10M
公開 測資點#10 (10%): 1.0s , <10M
提示 :

你寫的演算法的複雜度真的是$O(N+M)$嗎(?)

標籤:
出處:
[管理者:
giver (垃圾)
]


編號 身分 題目 主題 人氣 發表日期
沒有發現任何「解題報告」