摘要: 先象征性地描述一下问题:一组(或者一个)东西有且仅有两种选择,要么选这个,要么选那个,还有一堆的约束条件 图论问题,当然是建边跑图喽 给出模型: 题目POJ3683 然后说一下这个题的意思: 如果某两个婚礼进行仪式的时间有重合 那么就存在了矛盾关系,通过这些关系连边 Tarjan缩点重新建图(这里建 阅读全文
posted @ 2018-08-10 22:57 静听风吟。 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 本来A*就可以搞定的题,为了怕以后卡复杂度,找了个这么个方法 现阶段水平不够就不补充算法分析部分了 本题难度爆表,低级图论和高级数据结构的大综合 直接上代码了,以后学的多了再回过头来看方法 200多行幸亏没出什么调不出来的错误,唉,菜啊 阅读全文
posted @ 2018-08-10 18:56 静听风吟。 阅读(1078) 评论(0) 推荐(0) 编辑
摘要: 被自己菜到了,printf加取地址符调到吐血 POJ3255的次短路问题 算法原理是这样的: 然后给出实现,我直接在原来的板子的基础上改的 真的是,无向图真坑 阅读全文
posted @ 2018-08-10 17:11 静听风吟。 阅读(164) 评论(0) 推荐(0) 编辑
摘要: POJ3241:求曼哈顿距离最小生成树上第k大(第n-k小)的边 这么难的建模只能抄下来了 好难啊 给出曼哈顿最小生成树的定义:给定二维平面上的N个点,在两点之间连边的代价为其曼哈顿距离,求使所有点连通的最小代价 显然这个图论题要结合解析几何或者是计算几何的一些东西了 首先给出一个结论:以一个点为原 阅读全文
posted @ 2018-08-10 15:18 静听风吟。 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 最小瓶颈路的意思是已经告诉你起点和终点了然后让你求瓶颈,最小瓶颈生成树呢是让你求出连通所有点的 所以最小瓶颈路求起来更快 例题UVA534 然后加入有T组询问,你就要提前预处理出所有的 这个方法在求次小生成树的代码里有体现,直接抄过来就好了 本质上是预处理出f数组 然后给出完整的实现: 阅读全文
posted @ 2018-08-10 11:09 静听风吟。 阅读(366) 评论(0) 推荐(0) 编辑
摘要: 最小瓶颈生成树不一定是最小生成树,但最小生成树一定是最小瓶颈生成树 由于关心最大边便把边从小到大排序,最先生成的那棵生成树就是答案。而这就是Kruskal算法,所以原图的最小生成树就是一棵最小瓶颈生成树了 感觉这个解释很牵强呀 不过知道结论就舒服多了 题目是BZOJ2429 这里看一下返回的结果就知 阅读全文
posted @ 2018-08-10 10:46 静听风吟。 阅读(990) 评论(0) 推荐(0) 编辑
摘要: 先求出MST。再枚举新加的一条边(u,v),这时成环便去掉(u,v)所在环上,即u到v的路径上的权值最大的边(不删(u,v)这个新增的边)。这样就是答案了 次小生成树一定至少有一条边与最小生成树不一样,那么存在不同于最小生成树的生成树中权值和最小的生成树就是次小生成树 处理出每对结点(u,v)的最小 阅读全文
posted @ 2018-08-10 10:15 静听风吟。 阅读(173) 评论(0) 推荐(0) 编辑