当前位置: 首页 > news >正文

做培训的都上哪些网站重庆网站关键词排名优化

做培训的都上哪些网站,重庆网站关键词排名优化,北仑营销型网站制作,建设网站广告语F : 道路建设 (Ver. I) Description 有N个村庄,编号从1到N,你应该建造一些道路,使每个村庄都可以相互连接。 两个村A和B是相连的,当且仅当A和B之间有一条道路,或者存在一个村C使得在A和C之间有一条道路,并…

F : 道路建设 (Ver. I)

Description

有N个村庄,编号从1到N,你应该建造一些道路,使每个村庄都可以相互连接。
两个村A和B是相连的,当且仅当A和B之间有一条道路,或者存在一个村C使得在A和C之间有一条道路,并且C和B相连。
现在一些村庄之间已经有一些道路,你的任务就是修建一些道路,使所有村庄都连通起来,并且所有道路的长度总和是最小的。

Input

测试数据有多组
第一行是整数N(3 <= N <= 100),代表村庄的数量。 然后是N行,其中第i行包含N个整数,这些N个整数中的第j个是村庄i和村庄j之间的距离(距离是[1,1000]内的整数)。
然后是整数Q(0 <= Q <= N *(N + 1)/ 2),接下来是Q行,每行包含两个整数a和b(1 <= a <b <= N),代表着村庄a和村庄b之间的道路已经建成。

Output

对于每组测试数据
输出一个整数,表示要构建的道路的长度总和最小值

Sample

Input
3
0 990 692
990 0 179
692 179 0
1
1 2
Output
179

解题思路

最小生成树啊,连接所有点并且让他们的权值之和最小,这里面需要注意的就是已经修好路的两村庄的处理,而且这还是无向图,也就是要处理两次,并且距离设为很小的数比较好。思路就是这些了,剩下的就找个prim算法或者kruscal操一下,输出最小值。

AC代码

#include <iostream>
#include <vector>
#include <limits>
using namespace std;const double MAX_WEIGHT = numeric_limits<double>::max();
const double ALREADY_CONNECTED = 1e-7;int PrimMinimumSpanningTree(const vector<vector<double>>& graph) {int n = graph.size();vector<double> key(n, MAX_WEIGHT);vector<bool> includedInMST(n, false);key[0] = 0;int totalWeight = 0;for (int count = 0; count < n; count++) {double minKey = MAX_WEIGHT;int minKeyNode = -1;for (int v = 0; v < n; v++) {if (!includedInMST[v] && key[v] < minKey) {minKey = key[v];minKeyNode = v;}}includedInMST[minKeyNode] = true;totalWeight += key[minKeyNode];for (int v = 0; v < n; v++) {if (graph[minKeyNode][v] && !includedInMST[v] && graph[minKeyNode][v] < key[v]) {key[v] = graph[minKeyNode][v];}}}return totalWeight;
}int main() {int n;while (cin >> n) {vector<vector<double>> graph(n, vector<double>(n));for (int i = 0; i < n; i++)for (int j = 0; j < n; j++)cin >> graph[i][j];int m;cin >> m;for (int i = 0; i < m; i++) {int a, b;cin >> a >> b;graph[a - 1][b - 1] = graph[b - 1][a - 1] = ALREADY_CONNECTED;}cout << PrimMinimumSpanningTree(graph) << endl;}return 0;
}
http://www.zhongyajixie.com/news/2597.html

相关文章:

  • 免费商城网站系统网站搭建关键词排名
  • 做网站直播平台电商平台怎么做
  • 网站 建设 外包网推平台有哪些
  • 苏州园区疫情攀枝花网站seo
  • 网站制作明细报价表台州关键词首页优化
  • 兴宁电子商务网站建设网络营销网站设计
  • 北京好的网站建设公司优化大师是干什么的
  • 做网站虚拟主机规格十大it教育培训机构排名
  • 开个做网站公司国内优秀网站案例
  • wordpress中国风主题重庆高端网站seo
  • 新闻网站建设概述免费做网站网站的软件
  • 深圳龙江网站设计百度推广账号
  • 企业做网站需要注意事项武汉建站优化厂家
  • 房地产公司网站建设报价方案百度一下首页极简版
  • 做网站首页与分页什么样子武汉网站竞价推广
  • 多多在线免费观看电视剧抖音seo优化
  • 天津哪家做企业网站灵感关键词生成器
  • 上海殷行建设网站百度认证
  • 常宁网站建设常宁网站建设吉林关键词优化的方法
  • 个人可以做行业网站吗2024年疫情还会封控吗
  • 网站系统模版企业网站系统
  • 网站设计实训心得体会优化快速排名教程
  • wordpress获取用户idseo与sem的区别与联系
  • 网站修改图片怎么做售卖链接
  • 有了网站 域名然后么做北京seo分析
  • 手机付费咨询网站建设百度竞价登录
  • 网站制作 网站建设 杭州网络营销能干什么工作
  • 龙岗网站建设哪家好磁力库
  • 帮别人做海报网站周口网络推广公司
  • 知名网站有哪些免费b2b平台推广