单点时限: 3.0 sec
内存限制: 512 MB
一个售货员必须访问n个城市,恰好访问每个城市一次,并最终回到出发城市。
售货员从城市i到城市j的旅行费用是一个整数,旅行所需的全部费用是他旅行经过的的各边费用之和,而售货员希望使整个旅行费用最低。
(等价于求图的最短哈密尔顿回路问题)令G=(V,E)是一个带权重的有向图,顶点集V=(v0,v1,…,vn−1)。从图中任一顶点vi出发,经图中所有其他顶点一次且只有一次,最后回到同一顶点vi的最短路径。
第一行两个数n和m,表示顶点数和边数,其中1≤n≤12,0≤m≤1000。
接下来m行,每行三个数u,v,c,表示有向边u到v,路径长度为c,c≤105。
图中可能有重边和自环。
一个数如果不存在哈密顿环路,则输出-1,否则输出最短哈密尔顿回路长度。
-1
4 12 1 2 1 1 3 10 1 4 10 2 1 10 2 3 1 2 4 10 3 1 10 3 2 10 3 4 1 4 1 1 4 2 10 4 3 10
4
默认i到i的路径长度为0