[GESP202412 八级] 排队
题目描述
小杨所在班级共有 $n$ 位同学,依次以 $1,2,\dots,n$ 标号。这 $n$ 位同学想排成一行队伍,其中有些同学之间关系非常好,在队伍里需要排在相邻的位置。具体来说,有 $m$ 对这样的关系($m$ 是一个非负整数)。当 $m\geq 1$ 时,第 $i$ 对关系($1\leq i\leq m$)给出 $a_i,b_i$,表示排队时编号为 $a_i$ 的同学需要排在编号为 $b_i$ 的同学前面,并且两人在队伍中相邻。
现在小杨想知道总共有多少种排队方式。由于答案可能很大,你只需要求出答案对 $10^9+7$ 取模的结果。
输入输出格式
输入格式
第一行,两个整数 $n,m$,分别表示同学们的数量与关系数量。
接下来 $m$ 行,每行两个整数 $a_i,b_i$,表示一对关系。
输出格式
一行,一个整数,表示答案对 $10^9+7$ 取模的结果。
输入输出样例
输入样例 #1
4 2
1 3
2 4
输出样例 #1
2
输入样例 #2
3 0
输出样例 #2
6
输入样例 #3
3 2
1 2
2 1
输出样例 #3
0
说明
对于 $20\%$ 的测试数据点,保证 $1\leq n\leq 8$,$0\leq m\leq 10$。
对于另外 $20\%$ 的测试数据点,保证 $1\leq n\leq 10^3$,$0\leq m\leq 1$。
对于所有测试数据点,保证 $1\leq n\leq 2\times 10^5$,$0\leq m\leq 2\times 10^5$。