- 博客(365)
- 问答 (1)
- 收藏
- 关注
原创 27.CF1004F Sonya and Bitwise OR 区间合并线段树
给定序列,要求支持操作: 1.单点修改 2.查询区间内按位或和至少为X的子区间数考虑分治。现在需要计算跨越区间中点的左、右端点对数。记录以区间中点为一端的前后缀,搭配双指针就可以 $O(n)$ 计算
2022-09-08 09:29:05
179
原创 26.CF1000F One Occurrence
给定序列,要求支持查询区间内只出现一次的数字可以离线,那么离线所有询问后按右端点排序,然后加入贡献回答即可
2022-09-08 09:28:31
296
原创 25.CF992E Nastya and King-Shamans 转化+线段树二分
给定序列,要求支持单点修改,查询序列中 a[i] = s[i - 1]a[i]=s[i−1] 的点(SPJ)线段树维护a_i - s_{i - 1}a i −s i−1 的区间最大值,然后树上二分查询即可
2022-09-08 09:27:32
177
原创 24.CF915E Physical Education Lessons 线段树维护区间反转
给定$0$序列要求支持区间$0-1$反转,区间求和(容斥一下). 对原题可以发现容斥一下,初始全0表示全为休息日,然后打标记支持区间反转即可。
2022-09-08 09:26:57
123
原创 23.CF911G Mass Change Queries 动态开点权值线段树+线段树合并
给出一个数列$a_i \in [1, 100]$,有$q$个操作,每种操作是把区间$[l,r]$中等于$x$的数改成$y$.输出$q$步操作完的数列。
2022-09-08 09:26:26
220
原创 22.CF877E Danil and a Part-time Job
要求支持子树0101反转,子树求和。树剖序列化一下,然后按照0-10−1序列反转板子来就可以。
2022-09-07 09:40:30
115
原创 21.CF840D Destiny 可持久化权值线段树+二分查询
每次给出三个参数$l,r,k$,询问区间$[l,r]$内是否存在出现次数严格大于$\frac{r-l+1}{k}$的数。如果存在就输出最小的那个$ans$,否则输出$-1$ 区间大于$k$的数,于是想到用可持久化权值线段树解决,注意额外检查左右区间。
2022-09-07 09:39:01
190
原创 20.CF817F MEX Queries 线段树(Lazy标记练习)
要求维护集合,初始为空,支持以下操作1.加入[l, r][l,r]在集合中未出现的数2.删除[l ,r][l,r]在集合中出现的数3.区间反转操作,加入未出现删除出现每次操作后输出集合MEX
2022-09-07 09:38:20
170
原创 19.CF803G Periodic RMQ Problem 线段树+分块+线段树标记
给定序B和整数K,要求对[B复制K次的序列]支持区间赋值、区间最小值操作。我们发现初始序列复制K次,于是想到初始就具有高度的重复性,可以用分块维护,但是发现普通分块难以支持区间赋值等操作。于是我们想到对每个块内分别建立一颗线段树,然后用再用一棵线段树维护各个块的信息。
2022-09-07 09:36:30
184
原创 17.CF739C Alyona and towers 区间合并线段树
给定序列,要求支持区间加,以及查询最长先增后减子区间(单峰序列)长度非常典型的区间合并线段树,记录左右起LIS,LCS,单峰
2022-09-07 09:21:50
244
原创 16.CF718C Sasha and Array 线段树+矩阵快速幂
要求支持区间和操作,查询元素作为下标时的斐波那契和转换为矩阵快速幂形式,用线段树解决。
2022-09-07 09:14:29
204
原创 15.CF620E New Year Tree
要求支持子树染色、计算子树颜色数目,颜色60种颜色只有60种,那么将颜色状压,用二进制位表示颜色。然后用树剖+线段树维护即可。
2022-09-07 09:13:41
163
原创 12.CF558E A Simple Task 线段树维护字符串区间排序
要求对于给定的字符串,对给定的区间进行排序线段树经典应用,维护26棵线段树,实现区间覆盖和查询即可。
2022-09-07 09:12:27
235
原创 11.CF522D Closest Equals 线段树+离线询问
给定序列,查询区间内距离最近的两个相等元素。离线查询,按右端点加入贡献计算答案即可
2022-09-06 11:11:27
268
原创 9.CF490F Treeland Tour 线段树合并
给出一棵带点权树,求树上最长上升子序列的长度对每个点开两棵线段树,记录叶节点到当前节点的LIS和LDS,然后合并时取最大值即可
2022-09-06 11:07:55
511
原创 8.CF446C DZY Loves Fibonacci Numbers 线段树Lazy标记
给定序列,要求支持区间对应项加斐波那契数列,区间求和
2022-09-06 11:07:18
212
原创 7.CF438D The Child and Sequence 线段树维护区间取模
给定数列,区间查询和,区间取模,单点修改。记录区间最大值,对于区间最大值小于模数的区间不予更新
2022-09-06 11:05:40
195
原创 6.CF431E Chemistry Experiment 权值线段树+二分
给定数列,区间查询和,区间取模,单点修改。记录区间最大值,对于区间最大值小于模数的区间不予更新
2022-09-06 11:04:58
260
原创 2.CF242E XOR on Segment 线段树维护区间反转
要求实现区间求和,区间异或对每个二进制位维护一棵线段树,实现区间异或可以通过对该位求补集大小实现
2022-09-06 11:03:04
261
原创 1.CF240F TorCoder 线段树区间覆盖(区间排序回文构造)
给定字符串,对于每次给定的区间,将区间置为最小字典序的回文串,不能操作就不操作。线段树维护区间覆盖。
2022-09-06 11:02:34
217
原创 30.Boring Queries 可持久化权值线段树维护区间GCD/LCM
Limitの线段树题单系列题解给定序列,要求不带修支持在线查询区间最小公倍数对1e9+7取模的结果主席树不带修在线维护区间GCD,记录质因数最后一次出现的位置并消除贡献
2022-09-04 20:34:57
369
原创 Limitの线段树题单 题解目录
Limitの线段树题单(洛谷)题解目录,内含个人全部题解链接。如果习惯我的线段树板子可以参考一下这些题解~不要忘记点赞哦~
2022-09-04 20:32:36
466
原创 P3302 森林 并查集+树上启发式合并+主席树
对于连边操作,我们使用并查集维护每一个连通块,在连边操作时对每条边连接的两个顶点做启发式合并。对于查询操作,在主席树上做树上前缀和二分区间第k大即可。注意lca要求在线重建,必须跑满log。...
2022-08-12 21:28:08
228
1
原创 2022杭电多校 第6场 1008.Shinobu Loves Segment Tree 规律题
然后沿着树上路径(实际上对应数字的二进制位)向上走,然后减去当前节点对应该减的值。那么我们可以写成式子:假设加法序列长度为。)+(若干个相同数字),然后发现加。产生的加法序列的规律:(若干个。的次数与层节点个数有关。时也要特判避免溢出。种情况也要特判,避免溢出。发现每个节点的按顺序。的规律,对于当前节点。...............
2022-08-04 17:03:16
373
原创 2022“杭电杯”中国大学生算法设计超级联赛(5)1003.Slipper dijkstra
那么考虑跳操作的性质规律在跑最短路时,对于当前节点。,此时我们会将两个集合入队,这时是通过跳的操作入队。(同一操作执行若干次再次到达当前状态)。首先排除建满边的做法,空间复杂度肯定过不去。给定带边权树,经过边需要花费边权代价。此后我们会发现如果通过任意次操作,集合至多被入队一次,我们在跑。,设能够跳到的点集分别为。,我们可以维护一个表。...
2022-08-02 16:56:49
235
原创 CodeTon Round 2 D. Magical Array 规律
那么根据以上结论,可以找出被影响的数组及操作次数。次操作后因为受影响元素连续,因此前缀和元素受到。,但发现由于受影响的元素不连续,因此。操作,问哪个数组被执行了操作。只有一个数组被执行了若干次。发现前缀和数组总和不受影响。会受影响,但收到的影响在。发现前缀和数组总和被。...
2022-08-01 11:39:57
266
原创 “蔚来杯“2022牛客暑期多校训练营4 DHKLN
接下来讨论边长变化规律可以发现两次生成的边长关系可以由原体的内切球和生成体的外接球关系导出,因为这俩球是同一个球。玩家可以升级剑,每次升级相当于在当前攻击力后面添加一个数字,问最少需要几次升级。那么考虑求经过无限此碰撞后生成的新序列,容易发现因为或操作的性质,首先可以发现,任意两个元素相撞变化后,不会引起总和的变化,因此。的矩形,把这些矩形拼成一个大矩形,求大矩形的最小周长。次操作后生成的是否为正多面体,以及最终正多面体的边长。次操作,每次操作取正多面体几何中心连线生成新凸壳。若干次碰撞后,方差会收敛。..
2022-07-30 21:12:12
279
原创 “蔚来杯“2022牛客暑期多校训练营4 L.Black Hole 垃圾计算几何
接下来讨论边长变化规律可以发现两次生成的边长关系可以由原体的内切球和生成体的外接球关系导出,因为这俩球是同一个球。那么首先我们整理一下边长。首先,合法的正多面体只有正四面体、正六面体、正八面体、正十二面体、正二十面体。次操作后生成的是否为正多面体,以及最终正多面体的边长。次操作,每次操作取正多面体几何中心连线生成新凸壳。至此,可以通过递推得到答案。面体(不一定合法,不合法就。...
2022-07-30 18:37:13
311
原创 “蔚来杯“2022牛客暑期多校训练营4 N.Particle Arts 规律 方差
那么考虑求经过无限此碰撞后生成的新序列,容易发现因为或操作的性质,首先可以发现,任意两个元素相撞变化后,不会引起总和的变化,因此。但可以直接怼上方差公式,但是又会爆。若干次碰撞后,方差会收敛。于是直接按位统计后生成新序列计算即可。,那么可以在运算过程中全部使用。相撞后会湮灭并产生两个新元素。,那么无限次或操作会将为。...
2022-07-30 18:04:35
204
原创 [SAM模板题] P3975 [TJOI2015] 弦论
表示不同限制下的子串数目,以及每个点的点权。不难发现,我们可以维护一个。求子树大小作为点权,然后。
2022-07-28 21:40:04
179
原创 “蔚来杯“2022牛客暑期多校训练营3 ACFHJ
给出两棵编号1−n1-n1−n的树A,BA,BA,B,A,BA,BA,B树上每个节点均有一个权值,给出kkk个关键点的编号x1…xnx_1…x_nx1…xn,问有多少种方案使得去掉恰好一个关键点使得剩余关键点在树AAA上LCALCALCA的权值大于树BBB上LCALCALCA的权值。处理出所有关键节点的前缀LCALCALCA和后缀LCALCALCA,然后枚举所有的关键节点求LCALCALCA后CheckCheckCheck计数即可。C.Concatenation 签到?题目分析排序规则A+B...
2022-07-26 11:25:18
372
1
原创 “蔚来杯“2022牛客暑期多校训练营3 J.Journey 0-1最短路
给定一个城市有若干十字路口,右转需要等红灯,直行、左转和掉头都需要,求起点到终点最少等几次红灯。可以将每条路径视为点,十字路口处分情况连边,边权赋为。最短路问题,然后直接跑。...
2022-07-26 11:23:06
180
原创 “蔚来杯“2022牛客暑期多校训练营3 H.Hacker SAM+线段树/DP/分治(不带修查区间最大子段和)
给定母串以及若干子串,子串长度固定,每个位置都有一个权值,要求在子串和母串的公共子串中找到一个连续区间,使得连续区间的权值和最大,求最大权值和。每次找到合法区间,直接线段树上查询并更新答案即可。与此同时,需要缩短当前长度。,分别表示当前状态以及匹配长度,一开始。现在我们来描述如何添加一个字符。...
2022-07-26 11:22:22
284
原创 “蔚来杯“2022牛客暑期多校训练营3 A.Ancestor LCA+暴力计数
问有多少种方案使得去掉恰好一个关键点使得剩余关键点在树。树上每个节点均有一个权值,给出。,然后枚举所有的关键节点求。处理出所有关键节点的前缀。
2022-07-26 11:20:52
178
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅