你的贪心算法可能假了。
如下数据:
1
10 11 8 9 10
1 1 1 1 1 11 45 14 19 19 810
9 1
1 2
2 3
3 10
3 8
9 4
4 5
5 10
9 6
6 7
7 8

贪心先选在 b→a 和 b→c 最短路上的点是假的,我们需要枚举所有点(除非要爆数组了)。如上例,b→4→5→c,b→6→7→a 是两条最短路,用到了 6 条边,被迫用到了第 6 小的边 11,这样算出来的答案是 16。但是如果 b→1→2→3→a/c 虽然总距离是 8 但是有 3 条边的交,只需要用到 5 条边,答案是 8。
调了一晚上/kk。