有向圖的節點個數為 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
原文出處
沒有留言:
張貼留言