QTREE系列题解】的更多相关文章

打了快一星期的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)…
Bigger系列题解 Bigger Python 坑点在于要高精度以及表达式求值,用java写可以很容易避免高精度问题 然后这道题就可以AC了 代码 import java.io.*; import java.util.*; import java.math.*; import java.text.*; public class Main { static Map<String,BigInteger> map= new HashMap<String,BigInteger>(); s…
$QTREE$ 就是一套树上数据结构练习题. 这套题貌似来源于 $SPOJ$,我是在 $luogu$ 看到的. $QTREE1$ 题意 一棵 $n$ 个点的带边权树,要求支持 单边改权值 和 询问路径边权和. 题解 树链剖分裸题. $QTREE2$ 题意 一棵 $n$ 个点的带边权树,有两种询问,分别是 询问路径边权和.询问有向路径的第 $k$ 个点. 题解 还是树链剖分裸题,由于没有修改,直接维护每条重链缩起来的信息即可,方便一次跳过重链. $QTREE4$ 题意 一棵 $n$ 个点的带边权树…
我现在才开始刷 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…
题目一 : 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…
每次做一道 NOI 系列的估计都很激动吧,对于我这种萌新来说( P1731 [NOI1999]生日蛋糕 练习剪枝技巧,关于剪枝,欢迎看我的垃圾无意义笔记 这道题是有一定难度的,需要运用各种高科技剪枝(? 如果泥能独立 AC 这道题,就可以拿到 NOI 铜牌了! (不过是1999年的,现在肯定难多了 其实这道题根本不需要考虑 \(\pi\) 因为: \[\begin{aligned} V_{\text{圆柱}} & = S_{\text{圆柱}} \times h\\ &= \pi r^2\…
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(); }…
QTREE4 #pragma comment(linker, "/STACK:102400000,102400000") //#include<bits/stdc++.h> #include <ctime> #include <iostream> #include <assert.h> #include <vector> #include <queue> #include <cstdio> #inclu…
GSS GSS1 随便猫树或者线段树,就可以过了 猫树不说,线段树可以维护左边最大,右边最大,区间最大,区间值然后就做出来了. //Isaunoya #pragma GCC optimize(2) #pragma GCC optimize(3) #pragma GCC optimize("Ofast") #include<bits/stdc++.h> using namespace std ; inline int read() { register int x = 0 ;…