好吧, 終於可以緩解下這兩天的想砍人的情緒了。開始錯了之後就跟別人討論——以爲是數據變態(後來某某學長的一句話更是令我們崩潰):這個小偷能 瞬間移動 or 讓時光倒流....(有點科幻了)。糾結了半天發先不是這個問題,因爲標程都跑不出這些數據來。
最後發現是沒加代碼中的“紅色部分”了(去掉這個,pcnt數組就亂了,除了起點之外,各個點的pcnt都會在求最短路徑裏被初始化):
我喜歡偷懶,喜歡用一些隱含的條件。比如初始化啦,還有這個函數遞歸邊界啦,能不指出就不指出。
好了,於是乎。。各種悲劇。
我之前以爲這是無用的變態題,看來我偏激了。總結下:
①在求路徑長度問題上,還是別用邊的長度判斷是否連通了。可能會有正的,0,或者負的情況。所以一個g[u][v]是解決不了問題的。
②這是求多條最短路徑,長見識了。
③還是該幹嘛幹嘛,偷懶的代價很嚴重。