题目:
给定一棵树和一些路径 问 最多能选出多少路径放在树上 使得各个路径间没有点交叉
思路:
LCA+贪心
对于一条路径 我们可以将它分成两部分 即 从u到lca 和 从v到lca 易知lca位于树上深度最浅的地方 而且如果这个lca被一条路径覆盖了 那么下面的子树都相当于被覆盖了
考虑到以x点为上述的lca点 那么如何选择经过x的路径呢 可以想到如果一条路...
分类:
其他好文 时间:
2014-08-06 14:51:44
阅读次数:
180
HDU 3207 Ikki's Story IV - Panda's Trick(图论-2SAT,图论-tarjan)
题目大意:
n个点,m条线段,线段可以放在环的外面和里面,问是否找到不相交的方案。
解题思路:
用2SAT的方法,根据矛盾关系连边,最后tarjan完后判断是否有矛盾边存在。...
分类:
其他好文 时间:
2014-08-05 22:48:50
阅读次数:
368
POJ 3352 Road Construction(图论-tarjan)
题目大意:
给定n个点m条边的无向连通图,问你至少添加多少条边,使得这个图去掉任意一条边依然连通。
解题思路:
首先环中的边去掉依然连通,所以环缩成点,然后将度数为1的点肯定要两两相连,否则去掉这个点所在的边就肯定不连通了。
因此,答案就是:(度数为1的点的个数+1)/ 2...
分类:
其他好文 时间:
2014-08-05 22:43:00
阅读次数:
339
题目链接:Click
Here~
题意分析:
给一根长为L的木棒,然后给出要切的N处地方。要你用最少的花费完成这项任务。而花费是如何计算的呢?就是用当前木棒的长度是多少,那么花费就是多少。
算法分析:
运用记忆化的过程可以缩减很多时间,本题的实质是区间DP。原题是经典的石子合并问题。如果,感觉不好理解可以想想图论中的Flody模型。
状态转移方程:dp[i][j...
分类:
其他好文 时间:
2014-08-05 14:18:29
阅读次数:
191
uva 11324 The Largest Clique(图论-tarjan,动态规划)
题目大意:
T组测试数据,给一张有向图G,求一个结点数最大的结点集,使得该结点中任意两个结点 u 和 v满足:要么 u 可以到达 v, 要么 v 可以到达 u(u 和 v 相互可达也可以)。
解题思路:
”同一个强连通分量中的点要么都选,要么不选。把强连通分量收缩点后得到SCC图,让每个SCC结点的权等于它的结点数,则题目转化为求SCC图上权最大的路径。由于SCC图是一个 DAG, 可以用动态规划求解。“...
分类:
其他好文 时间:
2014-08-05 14:17:19
阅读次数:
244
链接:http://acm.hdu.edu.cn/showproblem.php?pid=4786
题意:有N个节点(1 5),M条边(0 5),其中一部分边被染成了黑色,剩下的边是白色,问能不能建立一棵树,树中有斐波那契数个白色边。
思路:用克鲁斯卡尔建三次树,第一是用所有边建树,判断是否能建成一棵树,第二次用黑边建树,最多可以用到x条黑边(不成环),n-1-x就是最少需要用的白边的数量,第...
分类:
其他好文 时间:
2014-08-05 11:22:59
阅读次数:
209
杭电的图论题目列表,共计500题,努力刷吧
AC 64ms
#include
#include
#include
#include
#include
const int INF = 1e8;
using namespace std;
int father[100010];
bool vis[100010];
int findx(int r)
{
int i = r,j;
...
分类:
其他好文 时间:
2014-08-05 11:19:39
阅读次数:
235
链接:http://poj.org/problem?id=2349
题意:北极有一些村庄,现需要在这些村庄间建立起通讯,有s个卫星频道,任何两个拥有卫星频道的村庄都可以直接通过卫星进行通讯而无视距离,没有卫星的村庄通过无线电进行通讯,并且这两个村庄的距离不能超过D,D值取决于无线电收发器的功率,功率越大,D值越大,但价格也越高,出于购买费用和维护费用的考虑,所有村庄的无线电收发器都相同,即D值相...
分类:
Web程序 时间:
2014-08-05 00:51:30
阅读次数:
302
http://poj.org/problem?id=1815
Friendship
Time Limit: 2000MS
Memory Limit: 20000K
Total Submissions: 9026
Accepted: 2534
Description
In modern society, e...
分类:
其他好文 时间:
2014-08-04 21:36:38
阅读次数:
335
题目:人生有很多选择,现在给你一些选择(0~n-1),和每个选择分支后面的其他选择序号,求选择总数。
分析:dp,图论。如果某状态的后续选择个数是0个则,代表死亡,统计所有到达死亡的路径条数即可。
用一个状态数组记录到达每个选择的路径数,它等于能到达它的前驱节点的路径加和。
稀疏图,使用邻接表储存。初始是节点0的路径条数为1,代表出生。
说明...
分类:
其他好文 时间:
2014-08-04 17:53:57
阅读次数:
199