数据结构--线段树
文章平均质量分 73
---cyh---
这个作者很懒,什么都没留下…
展开
-
Codeforce 52C---Circular RMQ 线段树
C. Circular RMQtime limit per test3 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputYou are given circular array a0, a1, ..., an - 1. The原创 2017-07-13 19:59:41 · 304 阅读 · 0 评论 -
HDU–6447–YJJ’s Salesman (dp+线段树)
题目链接题意:从(0,0)点走到(1e9,1e9)这个点,每次可以由(x,y)走到(x,y+1),(x+1,y),(x+1,y+1)这三个点之一,一个点由(x,y)由价值v,如果是由(x-1,y-1)走到(x,y),那么可以获得这个价值。问走到最后能获得的最大价值是多少。思路:倒着考虑,把点的坐标按x从小到大,y从小到大排序,容易想到ans[x][u]=max(ans[x][y+1],an...原创 2018-08-26 09:43:40 · 291 阅读 · 0 评论 -
HDU--6406--Taotao Picks Apples (预处理+线段树)
题目链接思路:**p[i] a[i]~a[n]最大的结果**cnt[i] a[1]~a[i]最大的结果**mx[i] a[1]~a[i]最大值预处理出p[i],cnt[i],mx[i]。对于每次查询,在修改a[x]为y,如果1~x的最大值大于等于y,s+=cnt[x-1],否则s+=cnt[x-1]+1;然后对于后半区间,如果y>=mx[x-1],s+=(x+1~n...原创 2018-08-15 19:21:14 · 224 阅读 · 0 评论 -
HDU--6315--Naive Operations(线段树)(2018 杭电多校二 07)
题目链接题意:有a数组和b数组,a开始全为0,b是1~n的一个排列。有两种操作,add l r,a[l]~a[r]每一个都加1,query l r,求a[l]/b[l]+...+a[r]/b[l],每一项向下取整。思路:线段树维护当前区间能对答案作出贡献需要加的最小次数,每次更新先区间更新,然后判断区间维护的最小值是否为0,为0则把每个答案能加一的点单点更新。AC代码:/****...原创 2018-07-25 21:10:16 · 294 阅读 · 2 评论 -
HDU-4417-Super Mario(线段树+离线)
Super MarioTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 8331 Accepted Submission(s): 3523Problem DescriptionMario is world-f原创 2018-04-11 23:21:28 · 275 阅读 · 0 评论 -
Codeforces-446(Div.2)-B-Wrath--(线段树区间更新)
B. Wrathtime limit per test:2 secondsmemory limit per test:256 megabytesinput:standard inputoutput:standard outputHands that shed innocent blood!There are n guilty pe原创 2017-11-18 10:18:59 · 199 阅读 · 0 评论 -
Codeforce-242E-XOR on Segment(线段树区间更新)
E. XOR on Segmenttime limit per test:4 secondsmemory limit per test:256 megabytesinput:standard inputoutput:standard outputYou've got an array a, consisting of n intege原创 2017-10-16 22:47:01 · 265 阅读 · 0 评论 -
Query on a string(线段树)(2017-icpc-乌鲁木齐网络赛)
You have two strings SSS and TTT in all capitals.Now an efficient program is required to maintain a operation and support a query.The operation C i chC~i~chC i ch with given integer iii an原创 2017-09-09 16:51:34 · 577 阅读 · 0 评论 -
线段树入门
线段树入门:前几天开始接触线段树,其一些基本的操作还是很容易理解的,但是区间更新我着实理解了好一会(因该是本人太菜),今天有时间,所以总结一下。这篇博客主要是讲一讲线段树的一些基本操作和我的一些理解。首先我们需要知道线段树它是建立在线段的基础上的,树上的每个节点代表的是一条线段[a,b],并且树上每个点都可以维护该区间的某个性质,因此线段树在处理区间问题上是非常高效的。例如查找某个区间的最大值、最...原创 2017-07-07 15:51:02 · 456 阅读 · 2 评论 -
hihocoder-1586---Minimum(2017-icpc-网络赛-北京赛区)(线段树)
时间限制:1000ms单点时限:1000ms内存限制:256MB描述You are given a list of integers a0, a1, …, a2^k-1.You need to support two types of queries:1. Output Minx,y∈[l,r] {ax∙ay}.2. Let ax=y.输入T原创 2017-09-23 19:44:56 · 214 阅读 · 0 评论 -
HDU-5493---Queue (线段树)
QueueTime Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1391 Accepted Submission(s): 709Problem DescriptionN people numbered fro原创 2017-09-14 21:04:44 · 174 阅读 · 0 评论 -
ZOJ-3453---Doraemon's Sweet Bullet (线段树)
Doraemon's Sweet BulletTime Limit: 2 Seconds Memory Limit: 65536 KB Doraemon likes to shoot his enemies with sweet bullets.n "enemies" stand in a line, each with a life value li (the原创 2017-08-17 20:56:25 · 243 阅读 · 1 评论 -
poj-1540---Tunnel Warfare (线段树)
Tunnel WarfareTime Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 9004 Accepted Submission(s): 3474Problem DescriptionDuring the Wa原创 2017-07-17 20:27:39 · 316 阅读 · 0 评论 -
hdu-4836-The Query on the Tree(线段树+LCA)
题目链接思路:对于每次询问,主要是看x和root的关系,求出root和xlcaroot=x ,ans为总的和lca=x 那么ans=总的和-(root到x这条链上父节点为x的那个点的子树和)否则,ans就是x的子树和求子树和和修改直接线段树维护。节点的编号和lca我是用的树链剖分求的AC代码:#include<bits/stdc++.h>using n...原创 2018-10-07 15:36:57 · 256 阅读 · 0 评论