floyd : 1234567for(int k=1;k<=n;k++){ for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ d[i][j]=min(d[i][j],d[i][k]+d[k][j]); } }} 当枚举到 k 时,d[i][j] 表示只经过 1~k 的 i 到 j 的最短路径 同余最短路 P3403