布线问题(prime)
布线问题
- 描述
- 南阳理工学院要进行用电线路改造,现在校长要求设计师设计出一种布线方式,该布线方式需要满足以下条件:
1、把所有的楼都供上电。
2、所用电线花费最少
- 输入
- 第一行是一个整数n表示有n组测试数据。(n<5)
每组测试数据的第一行是两个整数v,e.
v表示学校里楼的总个数(v<=500)
随后的e行里,每行有三个整数a,b,c表示a与b之间如果建铺设线路花费为c(c<=100)。(哪两栋楼间如果没有指明花费,则表示这两栋楼直接连通需要费用太大或者不可能连通)
随后的1行里,有v个整数,其中第i个数表示从第i号楼接线到外界供电设施所需要的费用。( 0<e<v*(v-1)/2 )
(楼的编号从1开始),由于安全问题,只能选择一个楼连接到外界供电设备。
数据保证至少存在一种方案满足要求。 - 输出
- 每组测试数据输出一个正整数,表示铺设满足校长要求的线路的最小花费。
- 样例输入
-
- 1
- 4 6
- 1 2 10
- 2 3 10
- 3 1 10
- 1 4 1
- 2 4 1
- 3 4 1
- 1 3 5 6
- 1
- 样例输出
-
- 4
题解:只能选择一个楼连接到外界供电设备。刚开始没看到这句话,错了;
- 代码:
-
- #include<stdio.h>
- #include<string.h>
- const int MAXN=;
- #define MIN(x,y)(x<y?x:y)
- const int INF=0x3f3f3f3f;
- int map[MAXN][MAXN];
- int low[MAXN],vis[MAXN];
- int ans;
- int out[MAXN];
- //int usd[MAXN];
- int N;
- void prim(){
- memset(vis,,sizeof(vis));
- // memset(usd,0,sizeof(usd));
- vis[]=;
- for(int i=;i<=N;i++)low[i]=map[][i];
- for(int i=;i<=N;i++){
- int temp=INF,k;
- for(int j=;j<=N;j++)
- if(!vis[j]&&low[j]<temp)temp=low[k=j];
- if(temp==INF)break;
- //if(out[k]<temp)ans+=out[k],usd[k]=1;
- //else
- ans+=temp;
- vis[k]=;
- for(int j=;j<=N;j++)
- low[j]=MIN(low[j],map[k][j]);
- }int temp=INF;
- for(int i=;i<=N;i++){
- //if(usd[i])continue;
- temp=MIN(temp,out[i]);
- }
- //if(temp==INF)temp=0;
- printf("%d\n",ans+temp);
- }
- int main(){
- int n,e,a,b,c;
- scanf("%d",&n);
- while(n--){
- ans=;
- memset(map,INF,sizeof(map));
- scanf("%d%d",&N,&e);
- while(e--){
- scanf("%d%d%d",&a,&b,&c);
- if(c<map[a][b])map[a][b]=map[b][a]=c;
- }
- for(int i=;i<=N;i++)scanf("%d",&out[i]);
- prim();
- }
- return ;
- }
- #include<stdio.h>
布线问题(prime)的更多相关文章
- nyoj 38 布线问题 Kruskal and Prim
布线问题 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 南阳理工学院要进行用电线路改造,现在校长要求设计师设计出一种布线方式,该布线方式需要满足以下条件: 1.把所有的 ...
- Java 素数 prime numbers-LeetCode 204
Description: Count the number of prime numbers less than a non-negative number, n click to show more ...
- Prime Generator
Peter wants to generate some prime numbers for his cryptosystem. Help him! Your task is to generate ...
- POJ 2739. Sum of Consecutive Prime Numbers
Sum of Consecutive Prime Numbers Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 20050 ...
- UVa 524 Prime Ring Problem(回溯法)
传送门 Description A ring is composed of n (even number) circles as shown in diagram. Put natural numbe ...
- 电子线路 PCB 中大电流 接口 和 布线问题;
问题1:电流 大小 和 PCB 中 布线线宽的 关系,电源和信号 稳定性? 问题2:大电流中 接口问题,如microUSB 充电接口中,2A等 快充时接口 会 发热,如果 接口的 布线 太细和 不妥善 ...
- Sicily 1444: Prime Path(BFS)
题意为给出两个四位素数A.B,每次只能对A的某一位数字进行修改,使它成为另一个四位的素数,问最少经过多少操作,能使A变到B.可以直接进行BFS搜索 #include<bits/stdc++.h& ...
- hdu 5901 count prime & code vs 3223 素数密度
hdu5901题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5901 code vs 3223题目链接:http://codevs.cn/problem ...
- 最小生成树 prime zoj1586
题意:在n个星球,每2个星球之间的联通需要依靠一个网络适配器,每个星球喜欢的网络适配器的价钱不同,先给你一个n,然后n个数,代表第i个星球喜爱的网络适配器的价钱,然后给出一个矩阵M[i][j]代表第i ...
随机推荐
- WIFI无线adb调试android
有个需求需要支持android插上键盘,鼠标等外设,但是这样就不能使用microusb口进行adb调试了. 研究了一番,发现可以利用wifi进行adb无线调试(adb应该本身已经支持无线调试). WI ...
- WF编译报错
最近在研究WF的时候,遇到了一个未知的错误,错误信息时这样的 错误 102 扩展“Microsoft.Activities.Build.Validation.ValidationBuildExtens ...
- leetcode_question_111 Minimum Depth of Binary Tree
Given a binary tree, find its minimum depth. The minimum depth is the number of nodes along the shor ...
- warning C4133: “函数”: 从“char [5]”到“LPCWSTR”的类型不兼容
弹窗打开一个网页,但是报错,代码如下: #include <stdio.h> #include <windows.h> void main() { ShellExecute(, ...
- nginx启动关闭
[root@localhost sbin]# ./nginx -s reload [root@localhost sbin]# ./nginx -s stop [root@localhost sbin ...
- shape和selector是Android UI设计中经常用到的
shape和selector是Android UI设计中经常用到的,比如我们要自定义一个圆角Button,点击Button有些效果的变化,就要用到shape和selector.可以这样说,shape和 ...
- OAuth 2.0 for MVC, Two Legged Implementation
OAuth 2.0 for MVC, Two Legged Implementation tdupont Fri, Mar 18 2011 9:30 AM 13 OAuth 1.0 was one ...
- AngularJS初始用之 中间件 connect .static 静态文件不能找到
学习心得,软件更新太快,学习不能照书本. 在学习搭建Nodejs服务器时,掉坑了啦,太坑了,对于什么都不知道的初学者,开门就是坑...,怎么坚持学下去... 还好,现在的世界很大,如果你发现自己不是犯 ...
- Response.Redirec方法传递汉字出现乱码
解决方法: //传参数时Response.Redirect("a.aspx?name"+Server.UrlEncode("我的名字")); //接收参数时 S ...
- MVC理解
1:MVC 中的@是什么意思? 类似于<% %>只不过它没有闭合的,这是MVC3.0的新特性2:关于ASP.NET MVC的Html.BeginForm()方法Html.BeginFo ...