一笔画问题 时间限制:3000 ms | 内存限制:65535 KB 难度:4 一笔画问题 时间限制:3000 ms | 内存限制:65535 KB 难度:4 zyc从小就比较喜欢玩一些小游戏,其中就包括画一笔画,他想请你帮他写一个程序,判断一个图是否能够用一笔画下来。 规定,所有的边都只能画一次, ...
分类:
移动开发 时间:
2016-10-03 16:59:38
阅读次数:
152
链接:http://vjudge.net/problem/UVA-10735 分析:题目保证底图联通,所以连通性就不用判断了。其次,不能把无向边转成有向边来做,因为本题中无向边只能经过一次,而拆成两条有向边之后变成了“沿着两个相反方向各经过一次”,所以本题不能拆边,而只能给边定向。首先我们给无向边任 ...
分类:
其他好文 时间:
2016-09-25 17:16:30
阅读次数:
184
题目描述: 有一幅 n 个点 m 条边的图,问单独删掉哪些点,可以使原图变成一棵树。(保证至少有一个解) 解题思路: 注意到树的性质是有 n 个点,n - 1 条边的联通图。而删掉一个点后新图有n-1个点,所以需要选择的点的度数是 m - ( n - 2 )。而要保证新图联通,所以要先Tarjan找 ...
分类:
其他好文 时间:
2016-08-12 01:10:06
阅读次数:
125
UVALive - 7303- Aquarium
题目大意:给你一个r * c的格子,每个格子有一个 ‘ \ ’ 或者 ‘/’ 的墙,以及打掉墙的费用,问使得所有块联通的最小费用。(看图好理解)
题目思路:就是将他化成一个图,联通的块相当于一个点,两个点之间有一条边,边的权值为墙的费用。转化为连通块的思路是:每个格子看成两部分,左侧和右侧。以一行来看,假设两个格子A,B。...
分类:
其他好文 时间:
2016-08-09 23:26:44
阅读次数:
455
bzoj2561最小生成树 题意: 给定一个连通无向图,假设现在加入一条边权为L的边(u,v),求需要删掉最少多少条边,才能够使得这条边既可能出现在最小生成树上,也可能出现在最大生成树上。 题解: 最小割。如果一个边出现在最小生成树上,那么权值比它小的边一定不能使图联通。因为要求删掉最少,所以当加入 ...
分类:
其他好文 时间:
2016-07-23 13:34:30
阅读次数:
163
tarjan、并查集、树状数组、树链剖分。 时间倒流,变删边为加边。 先求一波边双联通分量,缩点。 题目保证最后还是整张图联通的。。所以就是一棵树。 现在的操作就是,将路径上的边权置0(加边时),查询两点间边权和。 可以转换成求根到点路径上边权和,置0的时候,就相当于将子树内的值都减去原边的长度,可 ...
分类:
其他好文 时间:
2016-07-05 22:02:06
阅读次数:
359
大意:至少加几条边让图联通。
思路:让图联通的话肯定会与度数有关。所以找到入出度最大的补上即可。
#include
#include
#include
using namespace std;
const int VM=21010;
const int EM=51010;
const int INF=0x3f3f3f3f;
struct node{
int to ,...
分类:
移动开发 时间:
2016-05-12 15:58:02
阅读次数:
168
二分分值最大值lid,把所有的分值小于lid的边加入,如果图联通,证明可以。 #include #include #include using namespace std; const int maxn = 100000 + 10; const int maxm = 200000 + 10; int... ...
分类:
其他好文 时间:
2016-04-11 22:17:35
阅读次数:
117
时间:2016-04-09 00:02:24 星期六 题目编号:[2016-04-09][POJ][1251][Jungle Roads] 题目大意:给定n个城镇的若干条路及其每月维修的代价,问,在所有城市联通的情况下,最少需要多少维修费 分析: 保证边权最小,并且图联通—–>最小生成树 #incl... ...
分类:
其他好文 时间:
2016-04-09 01:32:07
阅读次数:
90
把每个字母看成一个结点,每个单词看成一条从第一个字母到最后一个字母的有向边。把这些单词首尾相接相当于寻找欧拉路径(一笔画)。 则其需满足两个条件:1.忽略边的方向后,原图联通。2.一个点的入度比出度大1,另一个点入度比出度小1,其他点入度和出度相等。
分类:
其他好文 时间:
2016-03-16 01:13:33
阅读次数:
278