(可持久化)线段树
文章平均质量分 81
SAuppp
这个作者很懒,什么都没留下…
展开
-
bzoj2333
2333333333333题号厉害 此题必做。。。据说是什么什么可并堆(没听说过orz于是自己yy了一个用splay + 线段树的作法线段树用来维护全局最大值splay维护单点最大 连通块最大作法。略。。#include <cstdio>#include <iostream>using namespace std;char s[2];int n,q,u,v...原创 2016-03-14 16:40:15 · 418 阅读 · 0 评论 -
bzoj1858
线段树模板题#include <cstdio>#include <iostream>using namespace std;int n,m,f,u,v;int l0[400010],r0[400010],m0[400010],l1[400010],r1[400010],m1[400010];int l[400010],r[400010],lz[400010],s...原创 2016-03-09 17:41:18 · 487 阅读 · 0 评论 -
bzoj3110 k大数查询 zjoi2013 【树套树】
树套树。在一个区间里面求另一个区间的值本来第一反应是treap套线段树 后来发现代码难度对我比较高 orz果断改成外层权值线段树 套 内层区间线段树内层空间硬开开不下。。只好先按着内存上限开了然后用一个变量记录某个点对应的内层线段树节点实现一个伪指针内层的lazy加上永久标记比较快\(^o^)/~#include <cstdio>#define L(i,j,k) for(i...原创 2015-02-10 11:03:32 · 362 阅读 · 0 评论 -
scoi2010序列操作
四川oi t了我两天 原来只是一个宏定义。。。真的什么心思都有了整个人都好了。宏定义 ?运算的maxmax(A(),B())就是 A()>B()?A():B()四倍慢。。。我还用了几次于是从1秒多瞬间到了10妙多WTF i m really drunk#include<cstdio>#define N 100010#define loop(i,j,k) for(int...原创 2015-02-08 10:41:14 · 360 阅读 · 0 评论 -
1881闪烁的繁星——线段树vijos
对于这道题 是一道裸线段树 从单点修改 全局查询 一眼看出线段树。。O(∩_∩)O~只不过这道题相较于原线段树 多了一个判定 即当tree[i]的左儿子 右儿子 的中间部分可以相连接构成一个更大的序列时的特判可以开一个数组a[i]记录当前点的明灭状况 -1为明 1为灭 每次改变状态就是a[i]*=-1;若左儿子右端点为 r 右儿子左端点为 l当a[l]+a[r]==0则可以...原创 2015-02-08 09:53:10 · 690 阅读 · 0 评论 -
bzoj3514【lct】【可持久化线段树】
lct + 主席树(这个ntr数组 吼啊 有道(zhe)理 污拉拉。。姑且就叫ntr算法咯。。#include <cstdio>#include <iostream>#include <algorithm>using namespace std;int n,m,k,ty;int ch[400010][2],fa[400010],rv[400...原创 2016-03-07 17:16:27 · 488 阅读 · 0 评论