生成树
Accsc
这个作者很懒,什么都没留下…
展开
-
UVa 10600 ACM contests and blackout(次小生成树)
这是一道次小生成树标准的模板题,使用prim算法计算最小生成树的同时,在用tmax[u][v]记录u点到v点的路径中最长的一条边的长度,used[i][j] 记录以i和j为两个端点的边是否在最小生成树中;此外,在用prim算法时除了用closedge[i]记录未访问顶点到已访问顶点集合最短边的长度, 还要用pre[i]表示这个最短边的另一个顶点。在prim的最后更新closedge时同时更新pre...原创 2018-08-22 23:20:25 · 167 阅读 · 0 评论 -
UVA-10462 Is there a second way? (DFS/并查集+次小生成树)
暑假快结束了,唉,不想回学校。 题目的意思很简单,给出一些点和连接这些点的边,如果 1. 无法形成连通图 输出No way:这个用并查集或者DFS检查连通性即可,对本题的数据规模来说时间效率没有什么显著差别,看个人喜好了;e<v-1时,无论如何都无法联通,直接输出No way 2. 能形成连通图,也就有了最小生成树。如果 1.刚好联通,即e==v-1,那么就没有...原创 2018-08-23 13:52:18 · 293 阅读 · 0 评论 -
UVa 1151 Buy or Build (子集枚举+Prim)
从刘汝佳的紫书上看到的这道题,没看懂他的神奇的解法什么意思,干脆直接暴力枚举子集,因为这相当于是一道稠密图的题,用kruskal不太划算,直接上Prim,250ms解决虽然比别的提交者慢了很多,但是解决这道题也足够了。 因为最多只有8个subnetwork,可以直接枚举他们的每种组合(这里用了bitset枚举),至多2^8=256种,在可接受的范围内。本题以坐标的形式给出了城市间的关系,因此边的...原创 2018-08-30 18:26:15 · 234 阅读 · 1 评论 -
POJ-3164 Command Network (朱刘算法)
这是一道最小树形图的模板题 朱刘算法开始时的确不是太好理解,在网上看了好多文章才差不多理解。 在这里说一点,缩点时,如果弧(u,v)的v点在一个环中,这个环形成的缩点在新图中的编号是k,那么新图中(u,k)的权值是W(u,v)-in[v],因为ret(即最终的返回值)只在朱刘算法的开始置了一次0,这个权值的变化可以保证,在对一个点加入新的入边时,可以顺便把上一次的旧边的权值在ret中去掉,对于...原创 2018-08-25 07:16:34 · 344 阅读 · 0 评论 -
HDU-4009 Transfer Water(无固定根朱刘算法)
首先明确一点,这道题目是肯定有解的,也就是说题目中说的“If the plan does not exist, print “poor XiaoA” in one line. ”,是不存在的,因为无论如何,每家都可以自己挖一口井喝水用。 从题目中的信息中抽象出最小树形图的思想:A可以给B供水,那么A->B就存在一条有向边;如果S点挖了一口井,他就可以作为一棵树形图的树根。由于谁是树根,共有...原创 2018-08-30 07:51:15 · 319 阅读 · 0 评论