随笔分类 -  图论--LCA

摘要:1471先学习了下tarjan算法的LCA 离线算法 它是先知道询问的结点对 在遍历的时候就已经算出来了看篇图解 讲的很清楚 1 #include 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 #define N 100010 8 struct node 9 {10 int u,v,w,next;11 }ed[N<<2];12 int head[N],t,n,q,dis[N];13 int vis[N],ans[N],qhead[N<<2];14 int father[N],x[ 阅读全文
posted @ 2013-09-25 19:43 _雨 阅读(224) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=3694用tarjan算出桥,用lca算出公共祖先 把路上的边更新掉 原来的桥变为不是桥 看一解题报告感觉有一部分是不用加的 不知道是不是数据水 没加交上也A了。。 1 #include 2 #include 3 #include 4 #... 阅读全文
posted @ 2013-06-17 23:38 _雨 阅读(138) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=1330这题只有一个询问,将一个节点的向上的标记下,再从另一个节点走一遍,遇到第一个被标记的就是 整个算法的最坏时间复杂度是O(Q*n),Q是询问的次数。View Code 1 #include <iostream> 2 #include<cstdio> 3 #include<cstring> 4 using namespace std; 5 int father[10010],f[10010]; 6 int main() 7 { 8 int g,i,j,k,n,a,b,t,c,d; 9 cin>&g 阅读全文
posted @ 2012-10-11 17:41 _雨 阅读(175) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示