A83471.Number of Shortest paths
普及/提高-
通过率:0%
时间限制:1.00s
内存限制:128MB
题目描述
在 AtCoder 国,有 N 个城市,编号为 1 到 N,以及 M 条道路,编号为 1 到 M。
通过第 i 条道路,可以在 1 小时内双向移动城市 Ai 和城市 Bi 之间。
从城市 1 到城市 N 的最短路径有多少条?
由于答案可能非常大,请输出其对 109+7 取模的结果。
输入格式
输入以如下格式从标准输入给出。
N M
A1 B1
⋮
AM BM
输出格式
请输出答案。
如果无法从城市 1 到达城市 N,请输出 0。
输入输出样例
输入#1
4 5 2 4 1 2 2 3 1 3 3 4
输出#1
2
输入#2
4 3 1 3 2 3 2 4
输出#2
1
输入#3
2 0
输出#3
0
输入#4
7 8 1 3 1 4 2 3 2 4 2 5 2 6 5 7 6 7
输出#4
4
说明/提示
限制条件
- 2≤N≤2×105
- 0≤M≤2×105
- 1≤Ai<Bi≤N
- (Ai,Bi) 互不相同
- 输入中的所有值均为整数
样例解释 1
从城市 1 到城市 4 的最短路径需要 2 小时,有 2 条路径可以实现,分别是 1→2→4 和 1→3→4。
样例解释 2
从城市 1 到城市 4 的最短路径需要 3 小时,有 1 条路径可以实现,即 1→3→2→4。
样例解释 3
无法从城市 1 到城市 2。在这种情况下,请输出 0。