线段树
wwt9b15bs
这个作者很懒,什么都没留下…
展开
-
【目录】线段树练习题
自己写过的一点点题的目录(就写过这么一点点题还需要目录?)……持续更新中 1.poj2528 题目地址 蒟蒻题解 2.sdoj2790 题目地址 蒟蒻题解原创 2018-08-09 16:51:36 · 417 阅读 · 0 评论 -
【题解】poj2482(同洛谷P1502) 线段树+离散化+扫描线
题目链接 这是我写过的第一篇扫描线的题,学习了大佬博客#include<cstdio>#include<cstring>#include<algorithm>using namespace std;typedef long long ll;#define lc o原创 2018-09-08 06:53:51 · 376 阅读 · 1 评论 -
【题解】CH4302 线段树+最大公约数+树状数组+构造
题目题目链接 哇这题WA了一万年,完全不知道哪里错了,改了两天后面照着标程改,几乎和标程一模一样都还是WA,最后把scanf换成cin>>就过了(我确认自己的scanf本身是没写错的)#include<cstdio>#include<iostream>#include<cmath>using namespace std原创 2018-09-08 06:54:00 · 386 阅读 · 0 评论 -
【题解】hdu4027(2018-07-27校赛 线段树入门 B)线段树
题目题目链接#include<cstdio>#include<cmath>#include<cstring>#include<algorithm>using namespace std;#define lc (o<<1)#define rc (o<&原创 2018-09-08 06:54:06 · 193 阅读 · 2 评论 -
【题解】hdu4578(2018-07-27校赛 线段树入门 C)复杂的线段树操作
题目题目链接 记得比赛时没有做出来,应该是去学了某个大佬的题解,但是已经找不到原作者了。#include<cstdio>#define lc (o<<1)#define rc (o<<1|1)#define mid (l+r>>1)const int N=1e5+5;const int mod=10007;typ原创 2018-09-08 06:54:10 · 245 阅读 · 0 评论 -
【题解】poj2481 线段树
题目链接 根据题意可以想到按照左端点升序排序,左端点相等时按照右端点降序排序,这样可以保证对于每个区间,可能包含它的区间一定在它之前被更新。#include<cstdio>#include<cstring>#include<algorithm>using namespace std;#define lc o<<1#原创 2018-09-08 06:54:15 · 476 阅读 · 0 评论 -
【题解】洛谷P4247[清华集训]序列操作 线段树
题目链接题目描述有一个长度为nn的序列,有三个操作:I a b c表示将[a,b][a,b]这一段区间的元素集体增加cc; R a b表示将[a,b][a,b]区间内所有元素变成相反数; Q a b c表示询问[a,b][a,b]这一段区间中选择cc个数相乘的所有方案的和\mod 19940417mod19940417的值。输入输出格式输入格式: 第一行两个数n,...原创 2018-09-10 07:17:45 · 245 阅读 · 0 评论 -
【题解】洛谷P4901[CYJian的水题大赛[第三弹]]B.乘积 线段树+线性筛
题目链接赛后题解利用斐波拉契数列相减找到位移量再线段树维护区间最小值,秀的飞起。#include<cstdio>#include<cstring>#include<algorithm>using namespace std;#define lc (o<&l转载 2018-10-03 10:43:22 · 168 阅读 · 0 评论 -
【题解】洛谷P3960[NOIP2017]列队 线段树动态开点
题目链接专程找到大佬题解,去学一波线段树的动态开点(我这么蒟蒻怎么会动态开点呢QAQ)(当然更不会平衡树什么的QAQ)我会告诉你我快读里面ch^48没加括号RE4次吗qwq#include<cstdio>#include<vector>#include<algorithm>using namespace std转载 2018-10-08 14:48:40 · 581 阅读 · 0 评论 -
【题解】poj3171 Cleaning Shifts 线段树优化DP
题目链接DescriptionFarmer John’s cows, pampered since birth, have reached new heights of fastidiousness. They now require their barn to be immaculate. Farmer John, the most obliging of farmers, has no c...原创 2018-09-29 18:10:41 · 502 阅读 · 0 评论 -
【题解】[牛客网NOIP赛前集训营-提高组(第一场)]C.保护 LCA+线段树动态开点+线段树合并
题目链接___#include<cstdio>#include<cstring>#include<algorithm>using namespace std;const int N=2e5+10;int n,m,hd[N],tot,dep[N],fa[N][20],ord[N],cnt,q;struct Edge{ int v,nx;...原创 2018-10-28 21:18:49 · 219 阅读 · 0 评论 -
【题解】CH4301 线段树
题目链接#include&lt;cstdio&gt;#include&lt;algorithm&gt;using namespace std;#define lc (o&lt;&lt;1)#define rc (o&lt;&lt;1|1)#define _rep(i,a,b) for(int i=(a);i&lt;=(b);i++)const i原创 2018-09-08 06:53:46 · 602 阅读 · 0 评论 -
【题解】hdu1264(2018-07-29校赛 线段树扫描线 B)线段树+扫描线+离散化
题目题目链接#include&lt;cstdio&gt;#include&lt;algorithm&gt;using namespace std;typedef long long ll;#define lc o&lt;&lt;1#define rc o&lt;&lt;1|1const int N=1e5+10;int hx[N&lt;&a原创 2018-09-09 07:22:05 · 228 阅读 · 0 评论 -
【题解】sdoj2790【雅礼集训 2017 Day1】市场 线段树区间整除
把除变成减这种操作惊了……写到后面写昏头,一个sb错一直没查出来……问题描述输入第一行为两个空格隔开的整数 n,q 分别表示商贩个数和政令 + 询问个数。第二行包含 n 个由空格隔开的整数 a0∼an−1接下来 q 行,每行表示一个操作,第一个数表示操作编号 1∼4 ,接下来的输入和问题描述一致。输出对于每个 3、4 操作,输出询问答案。样例输入10 1...原创 2018-08-09 15:59:47 · 562 阅读 · 0 评论 -
【题解】poj2528 线段树+离散化
题目大意给出n个区间,n&amp;amp;amp;amp;amp;amp;lt;=10000, 依次将每个区间涂上不同 的颜色,问最后还能看见多少种颜色输入第一行是一个整数t表示t组数据对于每组数据:第1行是n表示有n个区间接下来n行2个整数L,R表示区间(1&amp;amp;amp;amp;amp;amp;lt;=L&amp;amp;amp;amp;amp;amp;lt;=R&amp;amp;amp;amp;amp;a原创 2018-08-09 10:56:05 · 283 阅读 · 0 评论 -
【模板】线段树
以洛谷P3372为例#include<cstdio>#include<cstring>#define lc (o<<1)#define rc (o<<1|1)#define mid (l+r>>1)typedef long long ll;const int N=1e5+5;ll a[N],sum[N*4],lazy...原创 2018-08-12 16:52:34 · 108 阅读 · 0 评论 -
【题解】hdu2795(2018-07-28校赛 线段树入门2 C)线段树
题目链接 线段树维护最长的空位长度,每次先比较左子节点再比较右子节点#include&lt;cstdio&gt;#include&lt;cstring&gt;#include&lt;algorithm&gt;using namespace std;#define lc (o&lt;&lt;1)#define rc (o&lt;&l原创 2018-08-12 17:00:38 · 183 阅读 · 0 评论 -
【题解】hdu1698(2018-07-28校赛 线段树入门2 B)线段树区间修改
题目链接 线段树维护一段区间内钩子的颜色(材料)是否相同#include&lt;cstdio&gt;#define lc (o&lt;&lt;1)#define rc (o&lt;&lt;1|1)#define mid (l+r&gt;&gt;1)const int N=1e5+5;int s[N*4];//s为-1是杂色,s不为-1是纯色,可以直接出答案 v原创 2018-08-12 17:06:06 · 216 阅读 · 0 评论 -
【题解】hdu5692(2018-07-28校赛 线段树入门2 D)线段树+dfs序
题目题目链接#pragma comment(linker, "/STACK:1024000000,1024000000")#include&lt;cstdio&gt;#include&lt;cstring&gt;#include&lt;algorithm&gt;using namespace std;#define lc o&lt;&原创 2018-09-08 06:54:18 · 189 阅读 · 0 评论 -
【题解】poj3667(2018-07-28校赛 线段树入门2 E) 线段树
题目题目链接 思路参考了大佬题解#include&lt;cstdio&gt;#include&lt;algorithm&gt;using namespace std;#define lc o&lt;&lt;1#define rc o&lt;&lt;1|1const int N=5e4+10;int n,m;int mx[N&lt;&原创 2018-09-09 07:21:39 · 275 阅读 · 0 评论 -
【题解】hdu1542(2018-07-29校赛 线段树-扫描线)线段树+离散化+扫描线
题目题目链接 参考了大佬博客,讲的很清楚。#include&lt;cstdio&gt;#include&lt;cstring&gt;#include&lt;algorithm&gt;using namespace std;#define _rep(i,a,b) for(int i=(a);i&lt;=(b);i++)#define _for(i,a,b) for(int i原创 2018-09-09 07:21:31 · 222 阅读 · 0 评论 -
【题解】hdu1556(2018-07-24校赛 树状数组D/2018-07-27校赛 线段树入门A)树状数组/线段树
题目链接 树状数组区间修改单点查询#include&lt;cstdio&gt;#include&lt;cstring&gt;const int N=1e5+10;int d[N],sum[N];int n;int lowbit(int x){ return x&amp;(-x);}void add(int x,int val){ while(x&lt;=...原创 2018-09-07 07:15:42 · 145 阅读 · 0 评论 -
【题解】洛谷P2023[AHOI2009]维护序列(同bzoj1798) 线段树
题目题目链接#include&amp;lt;cstdio&amp;gt;#define lc o&amp;lt;&amp;lt;1#define rc o&amp;lt;&amp;lt;1|1typedef long long ll;const int N=1e5+10;int n,m;ll p;ll a[N],sum[N&amp;lt;&amp;lt;2原创 2018-09-09 07:21:49 · 297 阅读 · 0 评论 -
【题解】sdoj3740[2018.8.8集训]C.graph 构造+LCA+dfs序+线段树
题目链接#include<bits/stdc++.h>using namespace std;const int N = 200000 + 10;const long long inf = 1ll<<60;const int maxh = 20;int n, q, a[N*2], b[N*2], c[N*2], rev[N], st[N], ed[N],...原创 2018-11-07 08:53:45 · 193 阅读 · 0 评论