6766.Hamiltonian Flights

Time Limit: 2s Memory Limit: 512MB

There are $n$ cities and $m$ flight connections between them. You want to travel from Syrjälä to Lehmälä so that you visit each city exactly once. How many possible routes are there?

Input Format(From the terminal/stdin)

The first input line has two integers $n$ and $m$ : the number of cities and flights. The cities are numbered $1,2,\dots,n$ . City $1$ is Syrjälä, and city $n$ is Lehmälä.

Then, there are $m$ lines describing the flights. Each line has two integers $a$ and $b$ : there is a flight from city $a$ to city $b$ . All flights are one-way flights.

  • $2 \le n \le 20$
  • $1 \le m \le n^2$
  • $1 \le a,b \le n$

Output Format(To the terminal/stdout)

Print one integer: the number of routes modulo $10^9+7$ .

Sample Input

Copy
4 6
1 2
1 3
2 3
3 2
2 4
3 4
 · \n
 · \n
 · \n
 · \n
 · \n
 · \n
 · \n

Sample Output

Copy
2
 \n
Source: CSES, Graph Algorithms, 1690

Submit

请先 登录

© 2025 FAQs