给出一个有 n 个顶点的有向网,指定其中 k 个顶点(不含顶点 1 和顶点 n),求从顶点 1 到顶点 n 的、经过那 k 个顶点的最短路。
第一行是两个整数 n 和 e,分别表示顶点数和弧数目(1 \le n \le 40,1 \le e \le n \times n)。
接下来 e 行,每行三个整数 i, j, v(0 < i, j \le n,0 < v \le 100),表示从顶点 i 到顶点 j 的一条权值为 v 的弧。
接下来一行是一个正整数 k(1 \le k \le n - 2)。
接下来一行是 k 个正整数,表示必须经过的 k 个顶点。
如果不存在满足条件的路径,输出一行 "No solution"。
否则,输出两行:
5 7 1 2 2 1 3 3 2 4 1 3 4 2 2 5 5 3 5 4 4 5 3 2 2 3
8 1 2 4 3 5
第二组询问的最优方案为:选择 3 个物品 1 和 12499999998 个物品 2。
对于所有测试数据,1 \le n \le 50,1 \le v_i \le 10^5,1 \le c_i \le 10^6,1 \le q \le 10^5,10^{11} \le V \le 10^{12}。