{"trustable":true,"prependHtml":"\u003cscript\u003e window.katexOptions \u003d { disable: true }; \u003c/script\u003e\n\u003cscript type\u003d\"text/x-mathjax-config\"\u003e\n MathJax.Hub.Config({\n tex2jax: {\n inlineMath: [[\u0027$$$\u0027,\u0027$$$\u0027], [\u0027$\u0027,\u0027$\u0027]],\n displayMath: [[\u0027$$$$$$\u0027,\u0027$$$$$$\u0027], [\u0027$$\u0027,\u0027$$\u0027]]\n }\n });\n\u003c/script\u003e\n\u003cscript async src\u003d\"https://mathjax.codeforces.org/MathJax.js?config\u003dTeX-AMS-MML_HTMLorMML\" type\u003d\"text/javascript\"\u003e\u003c/script\u003e","sections":[{"title":"","value":{"format":"HTML","content":"\u003cdiv class\u003d\"panel_content\"\u003e某省自从实行了很多年的畅通工程计划后,终于修建了很多路。不过路多了也不好,每次要从一个城镇到另一个城镇时,都有许多种道路方案可以选择,而某些方案要比另一些方案行走的距离要短很多。这让行人很困扰。\u003cbr\u003e\u003cbr\u003e现在,已知起点和终点,请你计算出要从起点到终点,最短需要行走多少距离。\u003c/div\u003e"}},{"title":"Input","value":{"format":"HTML","content":"本题目包含多组数据,请处理到文件结束。\u003cbr\u003e每组数据第一行包含两个正整数N和M(0\u0026lt;N\u0026lt;200,0\u0026lt;M\u0026lt;1000),分别代表现有城镇的数目和已修建的道路的数目。城镇分别以0~N-1编号。\u003cbr\u003e接下来是M行道路信息。每一行有三个整数A,B,X(0\u0026lt;\u003dA,B\u0026lt;N,A!\u003dB,0\u0026lt;X\u0026lt;10000),表示城镇A和城镇B之间有一条长度为X的双向道路。\u003cbr\u003e再接下一行有两个整数S,T(0\u0026lt;\u003dS,T\u0026lt;N),分别代表起点和终点。"}},{"title":"Output","value":{"format":"HTML","content":"对于每组数据,请在一行里输出最短需要行走的距离。如果不存在从S到T的路线,就输出-1.\u003cbr\u003e"}},{"title":"Sample","value":{"format":"HTML","content":"\u003ctable class\u003d\u0027vjudge_sample\u0027\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e3 3\r\n0 1 1\r\n0 2 3\r\n1 2 1\r\n0 2\r\n3 1\r\n0 1 1\r\n1 2\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e2\r\n-1\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n"}}]}