2011年10月29日 星期六

280 - Vertex

在一個有向圖中,從一個特定的起點開始走訪,請找出所有無法拜訪的節點。

有向圖的節點個數為 n (1 <= n <= 100),其節點依序編號為1 ~ n,並以 p -> q 表示由 p 到 q 的邊。

節點 r 可從 p 拜訪,表示存在一 p -> r 的邊,或是存在一節點 q 使得 q 可從 p 拜訪且 r 可從 q 拜訪。

Input

輸入會有多組測試資料,每組資料會給定一有向圖,及一些起始節點。

有向圖的第一列會給定一個整數 n 表示節點數,接下來會有許多列,每列有許多整數, 令每列的第一個整數為 i ,且之後的整數為 j... k,表示存在邊 i -> j, ..., i -> k,每列的最後一定以 0 作為結束,i 滿足 1 <= i <= n,且每列的 i 之值不會相同。圖的最後一列以一個 0 表示結束,在圖的定義之後會有一列整數,第一個整數表示該列之後有多少個整數,每個整數表示起始節點編號,請對所有起始節點輸出其所有不可及的節點。當 n = 0 表示測試資料結束。

Output

請對每組測試資料輸出每一個起始節點出發的不可及的節點,每組一列,每列的第一個整數表示該列有幾個不可及節點。

Sample Input

3
1 2 0
2 2 0
3 1 2 0
0
2 1 2
0

Sample Output

2 1 3
2 1 3


原文出處

沒有留言:

張貼留言