博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
机试题:畅通工程与继续畅通工程(加造价)
阅读量:4106 次
发布时间:2019-05-25

本文共 1951 字,大约阅读时间需要 6 分钟。

畅通工程 继续畅通工程

省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可)。经过调查评估,得到的统计表中列出了有可能建设公路的若干条道路的成本。现请你编写程序,计算出全省畅通需要的最低成本。

 测试输入包含若干测试用例。每个测试用例的第1行给出评估的道路条数 N、村庄数目M (N, M < =100 );随后的 N 行对应村庄间道路的成本,每行给出一对正整数,分别是两个村庄的编号,以及此两村庄间道路的成本(也是正整数)。为简单起见,村庄从1到M编号。当N为0时,全部输入结束,相应的结果不要输出。

省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可)。现得到城镇道路统计表,表中列出了任意两城镇间修建道路的费用,以及该道路是否已经修通的状态。现请你编写程序,计算出全省畅通需要的最低成本。

测试输入包含若干测试用例。每个测试用例的第1行给出村庄数目N ( 1< N < 100 );随后的 N(N-1)/2 行对应村庄间道路的成本及修建状态,每行给4个正整数,分别是两个村庄的编号(从1编号到N),此两村庄间道路的成本,以及修建状态:1表示已建,0表示未建。

    当N为0时输入结束。

  输入

3 31 2 11 3 22 3 41 32 3 20 100

输出

3?

输入

31 2 1 01 3 2 02 3 4 031 2 1 01 3 2 02 3 4 131 2 1 01 3 2 12 3 4 10

输出

310

      这两道题本质上是一样的,所以放在一起对比来看。

畅通工程:

#include
//最小生成树,kruskal算法#include
typedef struct node{ int a,b,cos;}node; node r[100]; int tree[101];//父结点 int FindRoot(int a){ if(tree[a]==-1) return a; else{ tree[a]=FindRoot(tree[a]); return tree[a]; }} int cmp(const void*a,const void*b){ struct node*aa=a; struct node*bb=b; return aa->cos-bb->cos;} int main(){ int n,m; while(scanf("%d%d",&n,&m)!=EOF&&n!=0){ int i,a,b,ans=0,e=0; for(i=1;i<=m;i++) tree[i]=-1; for(i=0;i

继续畅通工程:

#include 
#include
#define MAX 101int graph[MAX]; typedef struct{ int val,x,y;}ROAD;ROAD road[MAX*50];int findRoot(int x){ if(graph[x]!=x) return findRoot(graph[x]); else return x;}int cmp(ROAD *r1,ROAD *r2){ return r1->val-r2->val;}int main(){ int N; while(scanf("%d",&N)!=EOF){ int i,x,y,val,flag,rnum,vnum; rnum=0; if(N==0) break; for(i=0;i
1;++i){ x=findRoot(road[i].x); y=findRoot(road[i].y); if(x!=y){ sum+=road[i].val; graph[y]=x; vnum--; } } printf("%d\n",sum); }//fclose(stdin); return 0;}

 

转载地址:http://cpssi.baihongyu.com/

你可能感兴趣的文章
Tomcat配置数据源步骤以及使用JNDI
查看>>
before start of result set 是什么错误
查看>>
(正则表达式)表单验证
查看>>
在JS中 onclick="save();return false;"return false是
查看>>
JSTL 常用标签总结
查看>>
内容里面带标签,在HTML显示问题,JSTL
查看>>
VS编译器运行后闪退,处理方法
查看>>
用div+css做下拉菜单,当鼠标移向2级菜单时,为什么1级菜单的a:hover背景色就不管用了?
查看>>
idea 有时提示找不到类或者符号
查看>>
JS遍历的多种方式
查看>>
ng-class的几种用法
查看>>
node入门demo-Ajax让前端angularjs/jquery与后台node.js交互,技术支持:mysql+html+angularjs/jquery
查看>>
神经网络--单层感知器
查看>>
注册表修改DOS的编码页为utf-8
查看>>
matplotlib.pyplot.plot()参数详解
查看>>
拉格朗日对偶问题详解
查看>>
MFC矩阵运算
查看>>
最小二乘法拟合:原理,python源码,C++源码
查看>>
ubuntu 安装mysql
查看>>
c# 计算器
查看>>