U265795 星战
题目背景
不可以,总司令。
题目描述
宇宙中爆发了星球大战。共有 $n$ 个星球,由 $m$ 条单向的虫洞连接。
有时,总司令会命令一个飞船从星球 $a$ 穿梭到星球 $b$。从星球 $a$ 到星球 $b$ 的过程称为一次穿梭,在穿梭过程中,飞船只能通过虫洞移动。在穿梭过程中,飞船可以在任意的星球停驻。为了平衡各星球的资源,一次穿梭不能在同一个星球停驻多次。显然,从星球 $a$ 穿梭到星球 $b$ 有许多条路径。如果两条路径有任意一个停驻的星球不同,或停驻星球的顺序不同,这两条路径就是不同的。
例如从星球 $1$ 穿梭到星球 $2$,可以选择都不停驻,也可以选择先在星球 $1$ 停驻,然后通过虫洞穿梭到星球 $2$,再停驻,然后结束穿梭。还可以先通过虫洞穿梭到星球 $2$,停驻之后再回到星球 $1$,再停驻,然后再去星球 $2$,结束穿梭。
现在,总司令想知道,从 $1$ 穿梭到 $n$ 共有多少种不同的路径。
输入格式
第一行两个整数 $n,m$。
后面 $m$ 行,每行两个整数 $u,v$,表示有一条 $u→v$ 的虫洞。
输出格式
$1$ 行,答案,对 $10^9+7$ 取模。
如果没有任何一条路径,输出 $NO$。
说明/提示
| 测试点 | $n$ | $m$ |特殊性质|
| :----------: | :----------: | :----------: |:-:|
| $1$ | $\le 8$ | $\le20$ |无|
| $2$ | $\le 20$ | $\le 100$ |无|
| $3$ | $\le500$ | $\le1000$ |无|
| $4$ | $\le2000$ | $\le4000$ |无|
| $5$ | $\le 50000$ | $\le 10^5$| 无|
对于 $100\%$ 的数据,$1\le n,m\le 10^5$。
样例 $1$ 解释:
可以停驻的方案:
$[]$
$[1]$
$[3]$
$[1,3]$
样例 $2$:
$[]$
$[1]$
$[2]$
$[1,2]$
$[2,1]$
样例4:
$[]$
$[1]$
$[2]$
$[3]$
$[4]$
$[1,2]$
$[1,3]$
$[2,4]$
$[3,4]$
$[1,4]$
$[1,2,4]$
$[1,3,4]$