poj2421】的更多相关文章

题目链接: https://vjudge.net/problem/POJ-2421 题目大意: 还是给你n个点,然后求最小生成树.特殊之处在于有一些点之间已经连上了边. 思路: 和POJ-1751一样的,将已有的边的权值设置成0即可 #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<cmath> #include<queue&…
题意,在给出的图中,使用最小花费的边,使这个图仍然连通. #include <cstdio> #include <algorithm> #include <cstring> using namespace std; const int maxn=10005; int head[maxn]; int n,len=0,counter; long long ans; struct node{ int v,cost,u; //操作符的重写默认是小于等于 bool operato…
嘎唔!~又一次POJ过了HDU错了...不禁让我想起前两天的的Is it a tree?   orz..这次竟然错在HDU一定要是多组数据输入输出!(无力吐槽TT)..题目很简单,炒鸡水! 题意: 告诉你每个村庄之间的距离,和几组已经联通的村庄,求使所有村庄联通所要建的道路的最短距离. 很简单,用最小生成树的Prim算法,相当于邻接矩阵已知,把已联通的村庄之间的距离改为零即可. 附上AC代码: #include <stdio.h> #include <string.h> #incl…
题意: 有N个点,有些点已经连接了,然后求出所有点的连接的最短路径是多少. 思路: 最小生成树的变形,有的点已经连接了,就直接把他们的权值赋为0,一样的就做最小生成树. 代码: prime: #include <cstdio> #include <iostream> using namespace std; #define maxn 100+5 #define inf 0x3f3f3f3f int maps[maxn][maxn]; bool vis[maxn]; int dis[…
Constructing Roads Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other) Total Submission(s) : 54   Accepted Submission(s) : 28 Font: Times New Roman | Verdana | Georgia Font Size: ← → Problem Description There are N villag…
SB题,求最小生成树,其中有些边已经给您建好啦. 随意暴力即可. #include<cstdio> #include<algorithm> #include<cstring> using namespace std; ],fa[],n,m,a[][],q,x,y,f1,f2,ans; ;i<=n;i++) fa[i]=i;} int findroot(int x) { if(fa[x]==x) return x; int rt=findroot(fa[x]); f…
Constructing Roads Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 22048   Accepted: 9389 Description There are N villages, which are numbered from 1 to N, and you should build some roads such that every two villages can connect to each…
水过~~~~打好基础/~~ ------prim #include <iostream> #include <stdio.h> #include <string.h> #include <stack> #include <queue> #include <map> #include <set> #include <vector> #include <math.h> #include <algo…
Constructing Roads 这道题很水,就是一个裸的最小生成树,最不过把已经连接的节点的值再设为0. 代码: #include<cstdio> #include<cstring> #define N 1010 int dis[N][N],minn[N],n,m,a,b; bool u[N]; int main(){ scanf("%d",&n); ;i<=n;++i) ;j<=n;++j) scanf("%d",…
修路 时限: 2000MS   内存限制: 65536K 提交总数: 31810   接受: 14215 描述 有N个村庄,编号从1到N,您应该修建一些道路,使每两个村庄可以相互连接.我们说两个村庄A和B是连通的,当且仅当A和B之间有一条道路,或者存在一个村庄C使得A和C之间有一条道路,并且C和B连通时. 我们知道,一些村庄之间已经存在一些道路,您的工作是建造一些道路,以使所有村庄都连接起来,并且所有道路的长度都应最小. 输入 第一行是整数N(3 <= N <= 100),它是村庄的数量.然后…
今天刷一下水题练手入门,明天继续. poj1861 Network(最小生成树)新手入门题. 题意:输出连接方案中最长的单根网线长度(必须使这个值是所有方案中最小的),然后输出方案. 题解:本题没有直接求生成树,但如果连接n个集线器的方案多于n-1条边,那么必存在回路,因此去掉某些边剩下的边和所有顶点构成一个生成树.对于一个图的最小生成树来说,它的最大边满足所有生成树的最大边里最小,正和题意. 吐槽:题目样例是错的... #include<cstdio> #include<cstring…
1.TreeMap和TreeSet类:A - Language of FatMouse ZOJ1109B - For Fans of Statistics URAL 1613 C - Hardwood Species POJ 2418D - StationE - Web Navigation ZOJ 1061F - Argus ZOJ 2212G - Plug-in2.SegmentTreeA-敌兵布阵 hdu 1166B - I Hate It HDU 1754C - A Simple Pro…
POJ题目分类 | POJ题目分类 | HDU题目分类 | ZOJ题目分类 | SOJ题目分类 | HOJ题目分类 | FOJ题目分类 | 模拟题: POJ1006 POJ1008 POJ1013 POJ1016 POJ1017 POJ1169 POJ1298 POJ1326 POJ1350 POJ1363 POJ1676 POJ1786 POJ1791 POJ1835 POJ1970 POJ2317 POJ2325 POJ2390 POJ1012 POJ1082 POJ1099 POJ1114…
The Beginning of the Graph Theory 是的,这不是一道题.最近数论刷的实在是太多了,我要开始我的图论与树的假期生活了. 祝愿我吧??!ShuraK...... poj1847 poj1125 neooj1339 neooj1374 neooj1574 neooj1497 poj1251 poj1789 poj2421(实现给出几条边,求最小生成树) poj2031(空间内n个球,代价是球心距-半径和,求最小生成树) jdoj1588(tarjan裸题) jdoj10…
网址:https://vjudge.net/contest/66965#overview 第一题: poj1251 裸最小生成树 #include<iostream> #include<algorithm> #include<cstring> using namespace std; const int maxn=100500; struct node { int x; int y; int w; }a[maxn]; int n,k; char s,v; int cnt…
题目链接:https://vjudge.net/problem/POJ-2421 思路:一些村庄,建一些路,使得所有村庄能相连,而且使得所有路长度之和最短. 题目说了,有些村庄之间已经建了路,说明有些路我们不需要建,那么在预处理的时候 把那些已经建过边的两个村庄的距离赋值为0,那么在跑最小生成树板子的时候就完成了 一些路已经建立的情况. #include <stdio.h> #include <iostream> #include <queue> using names…