欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

1150TravellingSalesmanProblem(图的遍历连通性

时间:2023-04-26

添加链接描述
图的遍历连通性用邻接矩阵

#includeusing namespace std;const int N=210;int mp[N][N];int main(){ int n,m; cin>>n>>m; for(int i=1;i<=m;i++){ int a,b,c; cin>>a>>b>>c; mp[a][b]=c; mp[b][a]=c; } int q; cin>>q; int res_id=0,res_dist=0x3f3f3f3f; for(int p=1;p<=q;p++){ int k,ok_connect=1,dist=0; sets; cin>>k; vectorarr(k); for(int i=0;i>arr[i]; s.insert(arr[i]); if(i){ if(mp[arr[i]][arr[i-1]]==0){ok_connect=0; // cout< } else { dist+=mp[arr[i]][arr[i-1]]; } } } printf("Path %d: ",p); if(ok_connect)cout<dist){ res_dist=dist; res_id=p; } } else if(s.size()==n&&arr[0]==arr[k-1]&&ok_connect){ cout<<" (TS cycle)"<dist){ res_dist=dist; res_id=p; } } else { cout<<" (Not a TS cycle)"<

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。