![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构——线段树
DSL_HN_2002
一名中学生oier,已退役
展开
-
「JOISC 2019 Day3」穿越时空 Bitaro-线段树
Description在河狸国,一条路上有 NNN 座城市,依次编为 1…N1\ldots N1…N 号;连接城市 iii 和城市 i+1i+1i+1 的那段路被称为 iii 号路。在河狸国,一天有 10910^9109 秒,依次称为时刻 0…109−10\ldots 10^9-10…109−1。从城市 iii 沿路到达与之相邻的城市——城市 i−1i-1i−1 或城市 i+1i+1i+1 需要...原创 2020-05-06 22:58:39 · 737 阅读 · 0 评论 -
「CTSC2010」产品销售-线段树+模拟费用流
Description有 nnn 天,每一天商店可以进口最多 UiU_iUi 件商品,价格为 PiP_iPi ,每一天也有一定的订货量 DiD_iDi 。一件商品进口之后,如果没有立即卖出,每在仓库放置一天要付出代价 MiM_iMi 。如果第 iii 天某位顾客要买的商品缺了 kkk 件,那么要付出 k×Cik \times C_ik×Ci 的代价延期一天购买。问最小总耗费。n≤1...原创 2020-01-17 10:13:08 · 339 阅读 · 0 评论 -
「Codeforces1109F」Sasha and Algorithm of Silence's Sounds-lct+线段树
Description给出一个 n×mn \times mn×m 的网格图,每个格子上有一个数,形成一个 n×mn \times mn×m 阶排列。求有多少个区间[l,r][l,r][l,r],使得这个区间内的所有数所在的格子网格图上构成一棵树。n×m≤200000n\times m \leq 200000n×m≤200000Solution考虑把树的限制拆为没有环+++连通块个数为11...原创 2019-09-22 22:31:46 · 192 阅读 · 0 评论 -
「BZOJ5312」冒险-线段树+势能分析
Description一个长度为 nnn 的序列 ai{a_i}ai,支持单点修改,区间与/或一个数,求区间最大值。n,m,ai≤200000n,m,a_i \leq 200000n,m,ai≤200000Solution设Φ(s)\Phi(s)Φ(s)为一个线段树节点的势能。Φ(s)\Phi(s)Φ(s)的值为其左右儿子的Φ\PhiΦ之和加上这个点所代表区间的数在多少个二进制位上不全...原创 2019-09-22 14:33:19 · 289 阅读 · 0 评论 -
「BZOJ3946」无聊的游戏-线段树+哈希
Description你有nnn个串,有两种操作给[l,r][l,r][l,r]的串在前面拼上新串sss。询问lcp(sl,sl+1,sl+2,...,sr)lcp(s_l,s_{l+1},s_{l+2},...,s_{r})lcp(sl,sl+1,sl+2,...,sr)n≤50000,∑∣S∣≤600000n\leq 50000, \sum |S| \leq 600000n...原创 2019-09-17 17:33:47 · 296 阅读 · 0 评论 -
「LOJ6032」「雅礼集训 2017 Day2」水箱-DP+线段树
Description给出一个长度为 nnn 宽度为 111,高度无限的水箱,有 n−1n - 1n−1 个挡板将其分为 nnn 个 1 - 1 的小格,然后向每个小格中注水,水如果超过挡板就会溢出到挡板的另一边,这里的水是满足物理定律的(在无挡板阻拦的情况下会向低处流),现在有 mmm 个条件 (i,y,k)(i, y, k)(i,y,k),表示从左到右数的第 iii 个格子中,在高度为 y+...原创 2019-07-14 22:34:36 · 289 阅读 · 0 评论 -
「ZJOI2019」线段树-线段树
Description这是链接Solution这题可以看做每次有12\frac {1} {2}21执行1操作,问tagtagtag数组之和的期望乘2p2^p2p(ppp是1操作的次数)。根据期望的线性性,单独计算出每一个节点的tagtagtag为111的期望fif_ifi,顺便计gig_igi表示iii到根的路径有tag=1tag=1tag=1的概率。将[l,r][l,r][l,r]...原创 2019-04-15 17:13:20 · 259 阅读 · 0 评论 -
「BZOJ3720」GTY的妹子树-时间分块+划分树
Description维护一棵初始有nnn个节点的有根树(根节点为111),树上节点编号为1−n1−n1-n,每个点有一个权值wiwiw_i。支持以下操作:0ux0ux0 u x 询问以uuu为根的子树中,严格大于xxx的值的个数。 1ux1ux1 u x 把uuu节点的权值改成xxx。 2ux2ux2 u x 添加一个编号为”当前树中节点数+1”的节点,其父节点为uuu,...原创 2018-08-06 23:32:52 · 262 阅读 · 0 评论 -
「BZOJ2962」序列操作-线段树
Decription有一个长度为nnn的序列和qqq个操作。有三种操作III aaa bbb ccc表示将[a,b][a,b][a,b]这一段区间的元素集体增加ccc。RRR aaa bbb表示将[a,b][a,b][a,b]区间内所有元素变成相反数。QQQ aaa bbb ccc表示询问[a,b][a,b][a,b]这一段区间中选择ccc个数相乘的所有方案的和mod199404...原创 2018-07-09 19:56:20 · 259 阅读 · 0 评论 -
「TJOI / HEOI2016」排序-二分+线段树
Description给出一个111到nnn的全排列,现对于这个全排列进行mmm次局部排序操作。(0,l,r)(0,l,r)(0,l,r)表示将区间[l,r][l,r][l,r]的数字升序排序。(1,l,r)(1,l,r)(1,l,r)表示将区间[l,r][l,r][l,r]的数字降序排序。排序后询问第qqq位置上的数字。Solution考虑每次只询问一个位置上的数字,可...原创 2018-07-08 13:48:06 · 259 阅读 · 0 评论 -
[SDOI2017]树点涂色(LCT,树链剖分,线段树)
Description给定一棵树。定义一条路径的权值是,这条路径上的点(包括起点和终点)共有多少种不同的颜色。要求支持三种操作:xxx,把点xxx到根节点的路径上的所有的点染上一种没有用过的新颜色;x,yx,yx,y,求xxx到yyy的路径的权值;xxx,在以xxx为根的子树中选择一个点,使得这个点到根节点的路径权值最大,求最大权值。Solution对于操作11...原创 2018-04-27 22:14:06 · 297 阅读 · 0 评论