题目描述
Problem Statement
There are N cities. The time it takes to travel from City i to City j is T_{i, j}.
Among those paths that start at City 1, visit all other cities exactly once, and then go back to City 1, how many paths take the total time of exactly K to travel along?
Input
Input is given from Standard Input in the following format:
N K
$T_{1,1} \ldots T_{1,N}$
$\vdots$
$T_{N,1} \ldots T_{N,N}$
Output
Print the answer as an integer.
Constraints
- $2\leq N \leq 8$
- If $i\neq j, 1\leq T_{i,j} \leq 10^8$.
- T_{i,i}=0
- T_{i,j}=T_{j,i}
- $1\leq K \leq 10^9$
- All values in input are integers.
Sample Input 1
4 330
0 1 10 100
1 0 20 200
10 20 0 300
100 200 300 0
Sample Output 1
2
There are six paths that start at City 1, visit all other cities exactly once, and then go back to City 1:
- $1\to$ $2\to$ $3\to$ $4\to$ 1
- $1\to$ $2\to$ $4\to$ $3\to$ 1
- $1\to$ $3\to$ $2\to$ $4\to$ 1
- $1\to$ $3\to$ $4\to$ $2\to$ 1
- $1\to$ $4\to$ $2\to$ $3\to$ 1
- $1\to$ $4\to$ $3\to$ $2\to$ 1
The times it takes to travel along these paths are 421, 511, 330, 511, 330, and 421, respectively, among which two are exactly 330.
Sample Input 2
5 5
0 1 1 1 1
1 0 1 1 1
1 1 0 1 1
1 1 1 0 1
1 1 1 1 0
Sample Output 2
24
In whatever order we visit the cities, it will take the total time of 5 to travel.
输入格式
见题面 Input 部分
输出格式
见题面 Output 部分