博客园 首页 私信博主 显示目录 隐藏目录 管理 动画

随笔分类 -  图论__树__最小生成树

摘要:"题面" 解析 这题好像没人写过啊(所以好像没题解)... 然后刚了一天才写出来~~摆了半天~~. 其实一开始是想错了, 写了个$O(n^2)$的近似于暴力的方法. 就是对于每组权值相等的边, 对于每条边先把它假装删掉, 再看有没有边能代替它. 结果最后一个点过不去~~我绝对没想过打表~~. 后来发 阅读全文
posted @ 2019-08-23 13:27 Hastin 阅读(188) 评论(0) 推荐(0)
摘要:"题面" 解析 我们先考虑一下加一条边(x,y,z)会成什么亚子: (还有很多边不画了...) 然后我们把这个图单独拿出来: 我们可以发现,对于最小生成树的贡献, 它是等价于下面这张图的(因为连通性一样): 而同理,最前面的图也可以变成: 所以,我们只需要连三条边$(x,y,z),(x,x+1,z+ 阅读全文
posted @ 2019-07-14 17:20 Hastin 阅读(123) 评论(0) 推荐(0)
摘要:"题面" 解析 首先根据Kruskal算法, 我们可以知道, 在加入权值为$w$的边时, 权值小于$w$的边都已经加进树里了(除了连成环的). 所以,我们可以保存一下每条边的端点在加入生成树之前的连通块, 把询问的边按边权排序, 对于每组边权相同端的边, 把它恢复到加入这种权值的边的连通情况, 在判 阅读全文
posted @ 2019-07-13 21:31 Hastin 阅读(162) 评论(0) 推荐(0)
摘要:题目描述 ​ 有一张 n 个点 m 条边的无向图,其中有 s 个点上有加油站。有 Q 次询问(a,b,c), 问能否开一辆油箱容积为 c 的车从 a 走到 b.(a,b均为加油站) 输入格式 ​ 第一行三个整数 n,s,m。 ​ 接下来一行 s 个数,表示有加油站的节点。 ​ 接下来 m 行,每行三 阅读全文
posted @ 2019-07-12 21:31 Hastin 阅读(343) 评论(1) 推荐(1)