在一开始我的60pts代码中我的算法主体是
for (int i = 1; i <= n; i++)
for (int j = 1; j <= n; j++)
for (int k = 1; k <= n; k++)
E[i][j] = min(E[i][j],E[i][k]+E[k][j]);
看了题解后发现算法主体是
for (int k = 1; k <= n; k++)
for (int j = 1; j <= n; j++)
for (int i = 1; i <= n; i++)
E[i][j] = min(E[i][j],E[i][k]+E[k][j]);
我注意到循环结构中只有 i, j, k 的位置发生变化
我的问题是:为什么不能改变i,j,k的位置呢?是否改变位置之后dp式子的含义就改变了?