- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算最佳连通分支
?? 在一张顶点带权的无向图中,计算含顶点数最多的一个连通分支和顶点权和最大的连通分支。【输入】??? n(顶点数,1≤n≤20)??? 以下n行,其中第i行是顶点i的权??? e(边数,1≤e≤210)??? 以下e行,每行为有边连接的一对顶点【输出】??? 含顶点数最多的一个连通分支??? 顶点权和最大的一个连通分支 【输入样例】 62102085751 51 62 34 65 6 【输出样例】 1-5-6-4-2-3-? program liantong_example;const? maxv=20;var? link,longlink:array[1..maxv,1..maxv] of boolean;? f:array[1..maxv] of boolean;? w:array[1..maxv] of integer;? v,e,k,i,j,s,best,besti,max,maxk:integer;procedure init;? begin?? assign(input,liantong.in);?? reset(input);?? assign(output,liantong.out);?? rewrite(output);?? fillchar(longlink,sizeof(longlink),0);?? fillchar(link,sizeof(link),0);?? readln(v);?? for i:=1 to v do???? readln(w[i]);?? readln(e);?? for k:=1 to e do???? begin?????? readln(i,j);?????? link[i,j]:=true;?????? link[j,i]:=true;???? end;? end;{init}procedure bibao;? begin??? longlink:=link;??? for k:=1 to v do????? for i:=1 to v do?????? for j:=1 to v do??????? longlink[i,j]:=longlink[i,j] or (longlink[i,k] and longlink[k,j]);? end;{bibao}procedure dfs(i:integer);???????? {深度优先搜索,用于输出路径}? begin??? write(i,-);??? f[i]:=true;??? for j:=1 to v do????? if (not f[j]) and longlink[i,j]???????? then dfs(j);? end;{dfs}begin{main}? init;? bibao;? for i:=1 to v do??? begin????? k:=0;s:=0;????? for j:=1 to v do????????? {计算顶点i所在连通分支中的顶点总数和顶点的权和}??????? if longlink[i,j]????????? then begin???????????????? k:=k+1;???????????????? s:=s+w[j];?????????????? end;??????? if kbest??????????????? {求出顶点数的最大值}??????????? then begin?????????????????? best:=k;?????????????????? besti:=i;???????????????? end;??????? if smax???????????????? {求出顶点权和的最大值}??????????? then begin?????????????????? max:=s;?????????????????? maxk:=i;???????????????? end;??????? if k=v then break;????? end;?? fillchar(f,sizeof(f),false);? {结点是否访问数组初始化}?? dfs(besti);?? writeln;?? fillchar(f,sizeof(f),false);?? dfs(maxk);? close(input);? close(output);end.
您可能关注的文档
最近下载
- 《我们班四岁了(第一课时)》课件.pptx VIP
- 银屑病关节炎早期识别与诊治专家共识解读.docx VIP
- 人教版四年级上册数学期中试卷及答案.docx VIP
- 系统健壮性分析课件.pptx VIP
- Power Up教材配套测试PU2期末测试卷答案.pdf VIP
- 农村公路病害识别图、日常巡查保养记录表、群众性养护日常保养常见问题与处治方式汇总.pdf VIP
- 2019医用输液泵和医用注射泵安全管理.docx VIP
- 儿童医院“十五五”发展规划方案(2026-2030年).docx
- 护理不良事件-课件.pptx VIP
- 危险化学品建设项目变更情形及审查要求、适用简易程序的建设项目种类.docx VIP
原创力文档


文档评论(0)