給你一些變數之間的條件限制(以 x < y 的樣式)。你的任務是寫一個程式輸出所有符合條件的變數排列(由小到大)。例如:
給你 3 個變數 x, y, x 和 2 個條件限制:x < y, x < z,在這 2 個條件限制之下,這 3 個變數的排列有2種:xyz, xzy
Input
每組測試資料2列,第1列為所有的變數名字。第2列為變數的條件限制,每個條件限制包含2個變數 x y。代表 x < y。變數之間可能有空白字元出現。請參考 Sample Input。
所有的變數都是一個字元,且是小寫英文字母。最少有 2 個變數,最多有20個變數。最少有1個條件限制,最多有50個條件限制。每組測試資料符合所有條件限制的變數排列數目最少1個,最多不會超過300個。
Output
對每一組測試資料,輸出所有符合條件的變數排列,每個一列,且各排列之間按字典順序排序。測試資料間請輸出一空白列,請參考Sample Output。
Sample Input
a b f g
a b b f
v w x y z
v y x v z v w v
Sample Output
abfg
abgf
agbf
gabf
wxzvy
wzxvy
xwzvy
xzwvy
zwxvy
zxwvy