http://blog.csdn.net/u011742541/article/details/12876415
void Floyd()
{
for( int k = 0; k < n; k ++ )
for( int i = 0; i < n; i ++ )
if( dis[i][k] < inf )
for( int j = 0; j < n; j ++ )
if( dis[i][j] > dis[i][k] + dis[k][j] )
dis[i][j] = dis[i][k] + dis[k][j];
}