问题描述 |
---|
大范最近在练车,由于车的数量不够,因此常常排队轮流练车,但是近日出现了一些插队现象,每当有一个人要进来进行排队的时候,发现自己有好友在队伍里,就会排到自己好友(们)的最后面。 我们用数字代表不同的人,比如当前的队伍次序是123,其中4,5,2是好友。 当4到来的时候,4就插到2的后面,队伍的次序变成了1243。 当5到来的时候,5就插到4的后面,队伍的次序变成了12453。 现在请你用编程模拟最后的队伍次序。 注意:自己好友的好友也是自己的好友。 |
输入描述 |
第一行是一个正整数 T 代表测试案例的数量。(1 <= T <= 100) 每组案例先是正整数n,m。分别代表要排队总人数和关系数。(n<=1e5,m<=100) 随后的m行,每行包括正整数a,b,代表a和b是好友关系。 随后按顺序输入n个正整数x(1<=x<=n),代表进场的顺序。 |
输出描述 |
针对每组案例,输出最终排队的次序,每个数字之间用空格隔开,最后一个数字的末尾没有空格。 每组案例输出完都要换行。 |
样例输入复制样例 |
1 5 2 2 5 2 4 1 2 3 4 5 |
样例输出 |
1 2 4 5 3 |
提示说明 |
数据量较大,建议scanf读入。 |
相关 |