随笔分类 -  图论—LCA

摘要:先说一个规律: 如图将每个月出生的兔子的编号写出来,可以发现一只兔子在哪一列他的父亲就是谁。 每列的首项可以通过菲波那契求得。 然后你就可以像我一样通过这个规律打表每个点的父亲,预处理出倍增数组,倍增求LCA,省掉了建树。期望得分70,实际得分50。 但是其实这已经很接近正解了:对于点i,那么fa[ 阅读全文
posted @ 2019-08-04 06:36 Al_Ca 阅读(227) 评论(0) 推荐(0)
摘要:Bzoj4568: [Scoi2016]幸运数字 线性基+倍增+LCA 原来线性基还能这么考……一开始看到这个题以为是树上差分线性基,然而线性基不支持删除,所以就挂了。 后来想到倍增线性基,其实到这里思路就很清晰了。 倍增线性基,A[i][j]表示从i开始向上2j步的线性基,询问时暴力合并即可。 1 阅读全文
posted @ 2019-07-25 06:01 Al_Ca 阅读(161) 评论(0) 推荐(1)
摘要:「BZOJ3694」「FJ2014集训」最短路 首先树剖没得说了,这里说一下并查集的做法, 对于一条非树边,它会影响的点就只有u(i),v(i)到lca,对于lca-v的路径上所有点x,都可通过1-t-u-v-x,长度为dep[u]+dep[v]+w(i)-dep[x],lca-u同理, 将非树边按 阅读全文
posted @ 2019-07-14 06:05 Al_Ca 阅读(105) 评论(0) 推荐(0)
摘要:3331: [BeiJing2013]压力 LCA+树上差分,和之前类似的题差不多,就是多了个v-dcc缩点,唯一要注意的就是判断是否是割点,对于不是割点的点,如果他是起点或重点,ans++,和差分没有关系,对于割点,则需要用到差分,注意割点与非割点的答案要分开存储,否则会死的。 另外要注意的是数组 阅读全文
posted @ 2019-07-13 20:50 Al_Ca 阅读(195) 评论(0) 推荐(0)
摘要:NOIP2016天天爱跑步 这题一看显然lca+树上差分,但是因为有w的限制不能直接加,所以考虑权值线段树合并, 每个选手的起点终点对于不同的节点的影响是不同的,这就非常麻烦了,但是可以发现无论如何他的深度是固定的,而对于一个节点i,能使他+1有如下两种情况: 1.dep[x]=dep[i]-w[i 阅读全文
posted @ 2019-07-13 06:25 Al_Ca 阅读(153) 评论(0) 推荐(0)
摘要:某次考试因为不会写板子,自己造出来的,所以有点丑…… 阅读全文
posted @ 2019-07-12 17:04 Al_Ca 阅读(125) 评论(0) 推荐(0)
摘要:#2691. 「POI2012」约会 Rendezvous 这题我简直不想说什么了,什么素质,卡常数…… “每个顶点有且仅有一条出边”,所以是一道基环树的题,首先tarjan缩点,在缩完点后的图上求a,b的LCA,如果LCA在环内,求出a,b分别对应环中的哪一个点,显然这两个点中的一个为最优解。 我 阅读全文
posted @ 2019-07-11 21:18 Al_Ca 阅读(171) 评论(0) 推荐(0)

ヾ(≧O≦)〃嗷~