Floyed最小环模板

#include
#include
using  namespace std;
const int inf(0x1f1f1f1f);
int n,m,map[105][105],d[105][105],ans=inf,what[3],p[105][105];
void print(int x,int y){
	if(!p[x][y]) cout<>n>>m;
	memset(map,inf,sizeof(map));
	memset(d,inf,sizeof(d));
	for(int i=1,x,y,z;i<=m;i++){
		cin>>x>>y>>z;
		d[x][y]=d[y][x]=map[x][y]=map[y][x]=min(map[x][y],z);
	}
	for(int k=1;k<=n;k++){
		for(int i=1;id[i][k]+d[k][j])
					d[i][j]=d[i][k]+d[k][j],p[i][j]=k;
	}
	if(ans==inf) cout<<"No solution.";
	else print(what[1],what[2]),cout<

你可能感兴趣的:(模板,图论,模板)