loj#P2969. 「COCI 2010.03.20」HOLMES

「COCI 2010.03.20」HOLMES

题目描述

译自 COCI 2010.03.20 T5. HOLMES

DD 个事件,编号分别为 1N1\ldots N

福尔摩斯有 MM 组形如 ABA\rightarrow B 的推论,表示「如果事件 AA 发生,那么事件 BB 一定会发生」。请注意,这不代表「如果 AA 不发生,BB 就一定不会发生」。

福尔摩斯的这 MM 组推论可以形成链式结构,例如 ABCA\rightarrow B\rightarrow C,但一定不会形成环,如 $A\rightarrow B\rightarrow C\rightarrow \dots \rightarrow A$。

已知事件 S1SNS_1\ldots S_N 会发生,试求哪些事件一定会发生。

Update: 原题题意不清(或者是我语文太差),补充一句,这样才能解释样例 1。对于一个事件 XX,如果存在推论 Y1X,Y_1\rightarrow X, Y2XY_2\rightarrow X,那么「事件 XX 一定会发生」当且仅当『「事件 Y1Y_1 一定会发生」或「事件 Y2Y_2 一定会发生」……』

输入格式

第一行:D,M,ND,M,N
接下来 MM 行:每行两个整数,表示一组推论 Ai,BiA_i, B_i
接下来 NN 行:第 ii 行有一个整数 SiS_i

输出格式

一行,若干个整数,表示一定会发生的事件。

以任意顺序输出均可 请按照编号递增的顺序输出,传题人懒得写 SPJ

3 2 1
1 2
2 3
2
1 2 3
3 2 1
1 3
2 3
3
3
4 4 1
1 2
1 3
2 4
3 4
4
1 2 3 4
4 4 1
1 3
2 3
1 4
2 4
3
3 4

数据范围与提示

1D1000,1\le D\le 1000, 1M105,1\le M\le 10^5, 1N,1\le N, Xi,X_i, Ai,A_i, BiDB_i\le D.