随笔分类 - 图论——lca
摘要:F. Auction of Services http://codeforces.com/gym/298615/problem/F 构建最小生成树,然后在树上建立lca,对于每次查询,相当于输出任意两点之间的最大值,用lca来处理树上任意两点的最大值。g[i][j]表示i号点向上跳2^j次的链上的最
阅读全文
摘要:https://codeforces.com/problemset/problem/1304/E用lca求树上距离只有3种情况a->ba->x+x->y+y->ba->y+y->x+x->b因为距离过长就可以来回走,所以k-len得是偶数 #include <iostream> #include <
阅读全文
摘要:poj3417lca+差分每加入一条新边就会形成一个环,这个环上除了新边都会被覆盖一次,断掉覆盖一次的边再断了覆盖它的新边就能把树分成两部分。对于被覆盖数大于1次的边,就得至少断两条新边,对答案就没有贡献了。对于没有被覆盖的,对答案贡献为新边的数量,覆盖为1的,贡献为1,再否则为0。d[x]表示节点
阅读全文
摘要:P3258 [JLOI2014]松鼠的新家倍增lca+树上差分,从叶子节点向根节点求前缀和,dfs求子树和即可,最后,把每次的起点和终点都。
阅读全文
摘要:T3.寻找克尔苏加德(search.cpp/pas/in/out) 四人小分队终于来到了纳克萨玛斯最后一层,在这里,克尔苏加德的的王座上,留着……一张纸条。正当铜须要拿起纸条,突然,一道淡蓝色光芒飘入了他的眼中…… 我是克尔苏加德,人类,来到我的城堡就要接受我的审判,来找我吧,卑微的蝼蚁!铜须如是说
阅读全文
摘要:#include <iostream> #include <cstdio> #include <cstdlib> #include <algorithm> #include <cmath> #include <cstring> #define inf 2147483647 #define N 100
阅读全文