B3647 样例都不过(
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
int n,m,map[114][114],u,v,w;
int main(){
cin>>n>>m;
memset(map,0x3f,sizeof(map));
for(int i=1;i<=m;i++){
scanf("%d%d%d",&u,&v,&w);
map[u][v]=w;
map[v][u]=w;
}
for(int k=1;k<=n;k++){
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(map[i][j]>(map[i][k]+map[k][j])){
map[i][j]=map[i][k]+map[k][j];
}
}
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
cout<<map[i][j]<<" ";
}
cout<<"\n";
}
}