解题思路:
注意事项:
参考代码:
#include<iostream> #include<cstring> #include<algorithm> using namespace std; const int N=55; int n; int dist[N][N]; void floyd() { for(int k=0;k<n;k++) for(int i=0;i<n;i++) for(int j=0;j<n;j++) dist[i][j]=min(dist[i][j],dist[i][k]+dist[k][j]); } int main() { scanf("%d",&n); memset(dist,0x3f,sizeof dist); for(int i=0;i<n;i++) dist[i][i]=0; int temp; for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { scanf("%d",&temp); if(temp!=0) dist[i][j]=temp; } } floyd(); for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { if(dist[i][j]>0x3f3f3f3f/2) printf("-1 "); else printf("%d ",dist[i][j]); } printf("\n"); } return 0; }
0.0分
2 人评分
C语言程序设计教程(第三版)课后习题6.6 (C语言代码)浏览:624 |
C语言程序设计教程(第三版)课后习题7.2 (C语言代码)浏览:661 |
简单的a+b (C语言代码)浏览:631 |
WU-C语言程序设计教程(第三版)课后习题11.12 (C++代码)(想学链表的小伙伴可以看看)浏览:904 |
【求[X,Y]内被除3余1并且被除5余3的整数的和】 (C语言代码)浏览:674 |
printf基础练习2 (C语言代码)浏览:747 |
程序员的表白 (C语言代码)浏览:598 |
图形输出 (C语言代码)浏览:944 |
C语言程序设计教程(第三版)课后习题10.7 (用指针求解)浏览:1475 |
买不到的数目 (C语言代码)浏览:3094 |