C语言的程序的设计的一个问题,Permutation

Problem Description
bobo has a permutation p1,p2,…,pn of 1,2,…,n.

Knowing m extra constraints of form pai<pbi, bobo wanna count the number of different permutations modulo (109+7).

It is guaranteed that there is at least one such permutation.

Input
The input consists of several tests. For each tests:

The first line contains n,m (1≤n≤40,0≤m≤20). Each of the following m lines contain 2 integers ai,bi(1≤ai,bi≤n).

Output
For each tests:

A single number denotes the number of permutations.

Sample Input
3 1
1 2
3 2
1 2
2 3

Sample Output
3
1