Problem1526--回家

1526: 回家

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 0  Solved: 0
[Submit] [Status] [Web Board] [Creator:]

Description

给⼀张 n 个点, m 条边没有边权的有向图,问从⼀个点 s 到另⼀个点 t
经过边数最少的路径有多少条。
H 城的交通路线可以看做为⼀个 n 个点, m 条边的有向图,边权均为
1,⼩ Z 打算从学校 (S ) 回到家中 (T )
Z ⽐较懒,总是会⾛从 S T 经过边的数量最少的那些路径,⽽⼩
Z 又不想⾛重复的路径。
所以⼩
Z 想让你算算,在这个图中,从 S ⾛到 T 的不同的经过边数最
少的路径有多少条?
由于答案可能很⼤,所以只需要输出答案除以
p 的余数。
如果
S ⽆法⾛到 T,那么请输出 0

Input

第⼀⾏三个整数 n,m,p,s,t。接下来 m ⾏,每⾏两个整数 x,y,表⽰ x
y 有⼀条边。

Output

⼀⾏⼀个整数,答案除以 p 的余数。

Sample Input Copy

4 5 1000 1 4
1 2
1 3
2 4
3 4
2 3

Sample Output Copy

2

HINT

对于 30% 的数据, n; m 20
对于
60% 的数据, n; m 1000
对于
100% 的数据,n; m 10^6,1 s; t; x; y n2 p 10^8

Source/Category