![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
spoj
文章平均质量分 51
lsr_yali
中国人寿,你值得拥有
展开
-
spoj375树链剖分模板
题意: 对于一颗树,两种操作(1)修改某边权(2)查询两点间最大边权解:树链剖分代码(200ms):#include#include#include#include#include#include#include#define For(i,j,k) for(register int i=(j);i<=(int)k;i++)#define Forr(i,j,k)原创 2016-12-04 10:36:19 · 284 阅读 · 0 评论 -
SPOJ Count on a tree
题意:给一棵树和点权,查询链上第k大点权解:主席树每个点相对父亲的线段树再加一个点建立主席树,查询的数字出现情况即为t[u]+t[v]-t[lca]-t[fa[lca]]代码#include<cstdio>#include<cstring>#include<algorithm>#include<cstdlib>#include<queue>#define For(i,j,k) for(in原创 2017-02-16 23:31:27 · 260 阅读 · 0 评论 -
QTREE系列1,4,5,6,7 LCT
QTREE1题意:给出一棵N(N <= 10000)个点的树,要求支持: 1.改变第i条边的权值 2.求a->b上的最大边权解:直接树剖或LCT即可代码1.LCT(660ms)#include<cstdio>#include<cstring>#include<algorithm>#include<cstdlib>#include<iostream>#define L(i) (T[i].原创 2017-02-12 09:10:53 · 598 阅读 · 0 评论 -
SPOJGSS7 Can you answer these queries VII
题意树上最大连续子段和题解维护前后缀和总的最大连续子段和 合并即可代码#include<cstdio>#include<cstring>#include<algorithm>#include<cstdlib>#define L(i) (T[i].s[0])#define R(i) (T[i].s[1])#define F(i) (T[i].fa)#define S(i) (T[i].原创 2017-02-12 10:00:35 · 254 阅读 · 0 评论