#P2187. 旅游

旅游

n个城市,一个人去旅游,他想游遍n个城市,且每个城市最多去两次,问最短的路程是多少。<o:p></o:p>

起点任意,每两个城市之间可能会有多条路,也可能会没有路。如果能游遍所有的城市<o:p></o:p>

输出最少的,不能的话输出-1

Input

有多组测试数据,每组都有一个正整数n和m(n>1&&n<=10,m>0)
n表示由n个城市,接下来有m行,每行三个正整数,u,v,w表示
u和v之间有一条长为w的路(w>=0&&w<300)。

Output

每组数据输出一行,如果能游遍所有的城市,输出最短的距离,如果不能,输出-1
样例输入

Sample Input

2  1
1  2  100
3  2
1  2  40
2  3  50
3  3
1  2  3
1  3  4
2  3  10
3  1
1  2  3 

Sample Output

</p>
100
90
7 
-1

HINT

Source