一点一点的进步

POJ 3728 离线 LCA

题意很简单 给一个树(n 若干个询问(5w) 对每个询问,问的是从u点走到v点(简单路径),商人在这个路径中的某点买入商品,然后在某点再卖出商品,   最大可能是多少 注意一条路径上只能买卖一次,先买才能卖 用的方法是离线LCA,在上面加了一些东西 对于一个询问, 假...

2015-01-22 01:38:17

阅读数:1561

评论数:1

POJ 1986 Distance Queries LCA和RMQ

这题以前用tanjan做过 现在再做一遍 用RMQ的方法。  大意就是求一棵树上任意两点的距离 先DFS跑出欧拉序列 然后根据pos直接RMQ就行了 #include #include #include #include #include #include #include ...

2012-08-17 14:10:25

阅读数:827

评论数:1

POJ 1470 LCA 公共祖先

裸题一个 /* ID: CUGB-wwj PROG: LANG: C++ */ #include #include #include #include #include #include #include #include #include #include #i...

2012-04-21 10:57:09

阅读数:825

评论数:0

POJ 2874 LCA 树上任意两点距离

本题说了是无环图,所以就是一片森林了。 而对于树上的任意两点,我们可以用LCA求其距离。距离为两个子节点到根的距离和减去最近祖先到根的距离的2倍。具体画图便可看出来。   并且图是无向图,所以LCA时需要进行标记 POJ 1986同这道题 基本一样 /* ID: CUGB-wwj PRO...

2012-04-21 09:51:37

阅读数:3185

评论数:0

POJ 3694 Network 割边+LCA

这道题跟3177意思差不多,不过最后问的不一样,说是加入某条边后,问图内剩余的桥有多少。 这题的大概思路就是,先求割边并标记,然后缩点,形成一棵树,然后把这颗树上各个结点的父结点用dfs求出来,再然后就是LCA了,因为加入某条边后,树内会形成一个圈,这个圈上所有的边将不再是桥,可以发现跟LCA的...

2012-01-20 01:31:30

阅读数:4149

评论数:5

POJ 1330 Nearest Common Ancestors Tarjan求LCA

这道题就是传说中的LCA了,从网上找了一个模板,用数组模拟的树 大概的原理, 大概就是:首先,把每个节点的祖先标记为自己,如果在一个子树内没有解决查询的LCA问题,那么该子树的所有节点的都将直接或间接的指向该子树的直接父亲,也就是子树内的所有节点的祖先都是该子树的父亲,然后就可以在该父亲的其他儿...

2012-01-13 21:09:10

阅读数:682

评论数:1

提示
确定要删除当前文章?
取消 删除
关闭
关闭