
线段树
文章平均质量分 89
hipamp
这个作者很懒,什么都没留下…
展开
-
[2021牛客多校7 B] xay loves monotonicity(线段树)
题意有长度为 nnn 的序列 aaa 和 010101序列 bbb,有 mmm 次操作,每次操作给出 l,rl,rl,r。每个操作为以下三种之一:将 ala_lal 改成 rrr将 bl,bl+1...,brb_l,b_{l+1}...,b_rbl,bl+1...,br 翻转 (即bi=(bi+1) mod 2b_i=(b_i+1)~mod~2bi=(bi+1) mod 2)设 [l,r][l,r][l,r] 中 aaa 形成的单调栈下标序列为原创 2021-08-23 17:18:16 · 205 阅读 · 0 评论 -
CF1326E Bombs(思维题)
题意给出一个排列 {pi}\{p_i\}{pi},同时给出一个炸弹顺序 {qi}\{q_i\}{qi},第 iii 颗炸弹放在第 qiq_iqi 处。每次从左往右加入 pip_ipi,遇到炸弹时炸掉当前最大值。输出放前 iii 颗炸弹最终序列的最大值(i=0,1,2...,n−1i=0,1,2...,n-1i=0,1,2...,n−1)。分析这题真是巧妙啊!我太蒻了!首先,ansi...原创 2020-03-24 22:47:46 · 273 阅读 · 0 评论 -
CF1295E Permutation Separation
题意给出一个排列 p1,p2,...pnp_1,p_2,...p_np1,p2,...pn .初始时你需要选择一个位置把排列分成左右两个。然后在两个序列间移动元素使得左边序列的所有元素都比右边的所有元素小。给出每个元素 pip_ipi 从一个序列移动到另一个序列的代价 aia_iai.分析先看最后两个集合的性质,假设左边的集合最大值是 kkk,那么左边的集合为[1,k][1,k]...原创 2020-02-01 12:34:17 · 324 阅读 · 0 评论 -
vijos p1083 小白逛公园(单点修改线段树)
描述小新经常陪小白去公园玩,也就是所谓的遛狗啦…在小新家附近有一条“公园路”,路的一边从南到北依次排着n个公园,小白早就看花了眼,自己也不清楚该去哪些公园玩了。一开始,小白就根据公园的风景给每个公园打了分-.-。小新为了省事,每次遛狗的时候都会事先规定一个范围,小白只可以选择第a个和第b个公园之间(包括a、b两个公园)选择连续的一些公园玩。小白当然希望选出的公园的分数总和尽量高咯。同时,由于一...原创 2019-08-02 10:27:17 · 219 阅读 · 1 评论 -
POJ2482 洛谷1502窗口的星星(动态开点线段树 + 区间修改 + 扫描线)
分析这道题的点是在二维平面上的,而数据范围是1e5,于是我们要用扫描线来降维。我们扫描横坐标,纵坐标就转化成了这么一个问题:一维平面上有多个点,每个点有个值,给一个长为 hhh 的区间,问区间内的点权和最大值是多少。(单点修改,区间查询)maya我从来没做过这种题,难道要枚举区间的端点??复杂度还不爆炸!!于是查了题解(我太弱啦)有一种典型的处理方法,是把单点修改变成区间修改,区间查...原创 2019-08-07 14:16:19 · 364 阅读 · 0 评论 -
线段树多种操作模板(区间加,区间乘,区间赋值)
做这种题目呢,我们只需要分清楚每种操作的优先级就行了。在这里,我们规定优先级:区间赋值>区间乘>区间加。也没啥好说而呀,我要咋办= =。记得 queryqueryquery 和 updateupdateupdate 时要 标记下饭(放就行了。放代码吧。代码如下#include <bits/stdc++.h>#define LL long long#define...原创 2019-08-22 21:05:07 · 1941 阅读 · 0 评论