激!QTREE系列】的更多相关文章

我现在才开始刷 QTREE 是不是太弱了?算了不管他…… QTREE: 树链剖分裸题(据说 lct 会超时……该说是真不愧有 spoj 的气息吗?) #include <cstdio> #include <cstring> ; ; ; inline void swap(int & , int & ); inline int max(int, int); inline char getch(); inline int getint(); inline void put…
打了快一星期的qtree终于打完了- - (其实还有两题改不出来弃疗了QAQ) orz神AK一星期前就虐完QTREE 避免忘记还是简单写下题解吧0 0 QTREE1 题意: 给出一颗带边权树 一个操作:修改边权 还有一个询问:求x到y路径上边权最大值 树链剖分模版题- -blabla 代码: #include <cstdio> #include <cstring> ; struct inli{ int next,data,lon; inli(,,): next(a),data(b)…
题目一 : SPOJ 375 Query On a Tree http://www.spoj.com/problems/QTREE/ 给一个树,求a,b路径上最大边权,或者修改a,b边权为t. #include <cstdio> #include <iostream> #include <cstring> #include <cstdlib> #include <algorithm> using namespace std; + ; ; ]; s…
$QTREE$ 就是一套树上数据结构练习题. 这套题貌似来源于 $SPOJ$,我是在 $luogu$ 看到的. $QTREE1$ 题意 一棵 $n$ 个点的带边权树,要求支持 单边改权值 和 询问路径边权和. 题解 树链剖分裸题. $QTREE2$ 题意 一棵 $n$ 个点的带边权树,有两种询问,分别是 询问路径边权和.询问有向路径的第 $k$ 个点. 题解 还是树链剖分裸题,由于没有修改,直接维护每条重链缩起来的信息即可,方便一次跳过重链. $QTREE4$ 题意 一棵 $n$ 个点的带边权树…
Qtree1 树剖裸题 注意把边权移到深度较深的点上,树剖跳的时候不要将LCA的答案统计上就行了 #include<stdio.h> #include<string.h> #define MAXN 100001 int read(){ ; ; char c = getchar(); while(!isdigit(c)){ if(c == '-') f = ; c = getchar(); } while(isdigit(c)){ a = (a << ) + (a <…
Qtree1 将边权变为这条边连接的两个点中深度更深的点的点权,这样就可以变为带修改链上最大点权.直接树链剖分即可. 下面是一份C语言代码 #include<stdio.h> #include<string.h> #define MAXN 10001 inline int read(){ int a = 0; int f = 0; char c = getchar(); while(!isdigit(c)){ if(c == '-') f = 1; c = getchar(); }…
众所周知的仅次于ynoi的毒瘤数据结构系列.(跟Qtree系列并列?) GSS1: 长度为 $n$ 的序列 $a$,$m$ 个询问,每次询问区间 $[l,r]$ 之间的最大子段和. $1\le n,m\le 5\times 10^4$. 经典的线段树题. 每个节点维护四个值:$sum,lmax,rmax,amax$. $sum$ 表示整个区间的和. $lmax$ 表示以 $l$ 为左端点的最大子段和. $rmax$ 表示以 $r$ 为右端点的最大子段和. $amax$ 表示整个的最大子段和. 时…
1.ZJOI树的统计 板子题 因为初始化没打改了几个小时 改到双腿软着出的机房(身体素质感人 #include<iostream> #include<cstdio> #include<cstdlib> #include<cstring> #define maxn 300000 #define ls x<<1 #define rs x<<1|1 using namespace std; ,v[maxn],top[maxn],son[ma…
Day -4 训练戳SX2019 3月训练 ZJOI2019 Day1几天前就考了 T1真考了麻将QwQ 九条可怜的毒瘤真的是业界良心 今天中午才起,要开始调整生物钟了 9012HBOIers群里讨论了一整天Quank大爷的GuOJ/HBOJ 窝没啥兴趣只知道锅有点儿多 下午去了机房不过也一直在颓 好像去年NOIP之前也有段时间状态跟现在一样 感觉有好多事要做,但又不知道做啥 考前学新的东西不太合适,复习旧的芝士又觉得还剩下几天没啥动力 刷不动题,写不动代码 晚上CF有场愚人节赛也不想熬夜打又不…
终于来到了Qtree3, 其实这是Qtree系列中最简单的一道题,并不需要线段树, 只要树链剖分的一点思想就吼了. 对于树链剖分剖出来的每一根重链,在重链上维护一个Set就好了, 每一个Set里存的都是重链中的黑点, 深度就是关键字. 考虑每一种操作 0 : 改变颜色 在他所在的重链上插入一个黑点或者earse掉 1 : 查询 就像树链剖分一样, 一直往上跳重链头然后更新答案即可 代码较短 #include <bits/stdc++.h> #define maxn 101000 #define…