随笔分类 -  线段树

摘要:Souvenirs 题目大意 给出 $n$ 以及一个长为 $n$ 的序列 $a$。 给出 $m$,接下来 $m$ 组询问。 每组询问给出一个 $l,r$,你需要求出,对于 $i,j \in [l,r]$,且满足 $i \neq j$,$|a_i-a_j|$ 的最小值。 $1 \leq n \leq 阅读全文
posted @ 2022-11-12 10:14 艾特玖 阅读(120) 评论(0) 推荐(0)
摘要:Pudding Monsters 题目大意 给定一个 $n \times n$ 的棋盘,其中有 $n$ 个棋子,每行每列恰好有一个棋子。 求有多少个 $k \times k$ 的子棋盘中恰好有 $k$ 个棋子。 $n \le 3 \times 10^5$。 分析 经典题目。 我们将二维问题变成一维的 阅读全文
posted @ 2022-11-11 16:21 艾特玖 阅读(36) 评论(0) 推荐(0)
摘要:F. Closest Pair 题目大意 给定 $n(2 \le n \le 3\times 10^5)$ 个二元组 $(x_i,w_i)$,其中 $|x_i|\le 10^9$,$1\le w_i \le 10^9$。 输入中二元组按照 $x_i$ 严格递增排序给出。 给出 $q(1\le q \ 阅读全文
posted @ 2022-11-11 10:41 艾特玖 阅读(47) 评论(0) 推荐(0)
摘要:Boring Queries 分析 关键点之一,在于我们对lcm性质的了解。n个数的lcm就等于$LCM_{i=l}^{r}a_i=\prod_{p是质数}p^{\max_{l\leq i \leq r}}cntt_{i,p}$,其中$cnt_{i,p}$表示$a_i$中p的的次数。 我们考虑根号分 阅读全文
posted @ 2022-11-08 23:11 艾特玖 阅读(26) 评论(0) 推荐(0)
摘要:Legacy 分析 模板题 利用线段树完成优化建图。 如果按照题目的要求去建边,我们直接的不论是时间还是空间都炸了,$O(n^2)$。 我们看到其中的第一二个操作都是从某个单点向区间连边。 这种区间操作,我们考虑一下,能否利用,每一个区间都可以表示为线段树上logn个区间来减少边的个数。 我们就拿2 阅读全文
posted @ 2022-11-07 22:27 艾特玖 阅读(161) 评论(0) 推荐(0)
摘要:P6242 【模板】线段树 3 分析 一看到要求,历史最大值。我们就要来看看操作,看看能不能将所有操作化成一个操作。这样就好操作一些。 总共两个操作,区间加,区间取min。 区间加好说,我们来看看如何解决区间取min操作。 我们其实无法做到快速的去区间取min,暴力的去求,我们只能递归到叶节点才能更 阅读全文
posted @ 2022-11-07 17:05 艾特玖 阅读(126) 评论(0) 推荐(0)
摘要:P2824 [HEOI2016/TJOI2016]排序 题目大意 这个难题是这样子的:给出一个 $1$ 到 $n$ 的排列,现在对这个排列序列进行 $m$ 次局部排序,排序分为两种: 0 l r 表示将区间 $[l,r]$ 的数字升序排序 1 l r 表示将区间 $[l,r]$ 的数字降序排序 注意 阅读全文
posted @ 2022-11-06 16:59 艾特玖 阅读(45) 评论(0) 推荐(0)
摘要:Treeland Tour 题目大意 给出一棵带点权树,选出一条简单路径,使得其上的最长上升子序列的长度最大。 分析 这题其实数据范围不大,是可以$O(n^2)$做的。但是我们讲的是线段树合并的做法,时间复杂度更优异一些。$O(nlogn)$。 解法本质是用线段树合并优化dp转移过程。 我们先来分析 阅读全文
posted @ 2022-11-05 20:58 艾特玖 阅读(61) 评论(0) 推荐(0)
摘要:P3521 [POI2011]ROT-Tree Rotations 分析 我们看操作,我们可以将任意一个节点的左右子树交换。 则,我们是改变的一段序列的顺序。 这里类似于的归并排序求逆序对的过程。对于某一个节点,我们在考虑交换与否左右子树会产生的最少新逆序对是多少时,只与左右子树中的数字有关,而与其 阅读全文
posted @ 2022-11-05 16:46 艾特玖 阅读(38) 评论(0) 推荐(0)
摘要:F. MEX Queries 分析 不得不说,题目不算难。但是非常考验选手的基础。我会把我出的问题放出到最后,给大家一些错误提示。 我们使用动态开点维护权值线段树。 我们先来看四个操作。 1.把 [l,r] 中在集合中没有出现过的数添加到集合中。 直接区间覆盖,将区间[l,r]区间覆盖为1。加一个懒 阅读全文
posted @ 2022-11-03 17:28 艾特玖 阅读(45) 评论(0) 推荐(0)
摘要:Destiny 题目大意 给定$n$个元素,$m$次询问。 每次给出三个参数$l,r,k$,询问区间$[l,r]$内是否存在出现次数严格大于$\frac{r-l+1}{k}$的数。如果存在就输出最小的那个$ans$,否则输出$-1$. 分析 我们看到要求区间[l,r]内存在的数字次数是否大于$\fr 阅读全文
posted @ 2022-11-01 20:36 艾特玖 阅读(29) 评论(0) 推荐(0)
摘要:P4062 [Code+#1]Yazid 的新生舞会 分析 这个题目还是很有意思的,我们来一步步分析一下。 首先,我们来定一下我们的解题方向。涉及到众数,我们一般是考虑从每一个数字去考虑。 我们算的是满足某一个数字 在该区间为众数 且在该区间该数字的数量$>\frac{r-l+1}{2}$ 条件的区 阅读全文
posted @ 2022-10-30 00:45 艾特玖 阅读(44) 评论(0) 推荐(0)
摘要:G. Mass Change Queries 分析 我们考虑,如果我们建100颗线段树,那么如何完成将x对应的[l,r]对应的位置,与y对应的[l,r]对应的部分合并? 线段树合并。结束了。 记得特判一下x==y的情况。 AC_code #include<bits/stdc++.h> #define 阅读全文
posted @ 2022-10-28 21:21 艾特玖 阅读(28) 评论(0) 推荐(0)
摘要:G. Periodic RMQ Problem 题目大意 给你一个序列$a$ 让你支持 $1$ $l$ $r$ $x$ 区间赋值 $2$ $l$ $r$ 询问区间最小值 我们觉得这个问题太水了,所以我们不会给你序列$a$ 而是给你序列一个长度为$n$ 的序列$b$ ,把$b$ 复制粘贴$k$ 次就可 阅读全文
posted @ 2022-10-28 16:35 艾特玖 阅读(32) 评论(0) 推荐(0)
摘要:I inner World 题目大意 初始给定一排n个树,都只有根节点1,接下来有m次操作,每次给[l,r]的树中的u下子树增加一个节点v。然后是q次询问,每次询问[l,r]的树中u的子树大小之和。请注意,m次操作中每次添加的点都不同。 分析 我们首先关注黒题部分。我们自然可以想到,将m次操作看成是 阅读全文
posted @ 2022-10-08 17:41 艾特玖 阅读(31) 评论(0) 推荐(0)
摘要:Explorer 题目大意 给定一个n个点m条边的无向图。每个边拥有四个属性,u,v,l,r分别表示为连接u,v两点的一条边,其只能通过体型在[l,r]的人。问从1到n有多少体型可以通过。 分析 蛮有意思的一道题目。我尽量以我的视角来说明白这道题的思路。 我们考虑,最直接的思路。我们将从1到n的所有 阅读全文
posted @ 2022-10-08 11:01 艾特玖 阅读(24) 评论(0) 推荐(0)
摘要:C. Alyona and towers 题目大意 现在有$n$个数,$m$个操作,每次区间加一个数,对于每一次操作,你要找出最长的$\ a_l...a_r\ $,满足 $$\exists k! \in![l,r],a_l<a_{l+1}<a_{l+2}<...<a_k>a_{k+1}>a_{k+2 阅读全文
posted @ 2022-09-20 18:14 艾特玖 阅读(34) 评论(0) 推荐(0)
摘要:CF522D Closest Equals 题目大意 现在有一个序列 $a_1, a_2, ..., a_n$ ,还有$m$个查询 $l_j, r_j$ $(1 ≤ l_j ≤ r_j ≤n)$ 。对于每一个查询,请找出距离最近的两个元素 $a_x$ 和 $a_y$$ (x ≠ y)$ ,并且满足以 阅读全文
posted @ 2022-09-19 10:26 艾特玖 阅读(33) 评论(0) 推荐(0)
摘要:CF446C DZY Loves Fibonacci Numbers 题目大意 在本题中,我们用 $f_i$ 来表示第 $i$ 个斐波那契数($f_1=f_2=1,f_i=f_{i-1}+f_{i-2}(i\ge 3)$)。 维护一个序列 $a$,长度为 $n$,有 $m$ 次操作: 1 l r:对 阅读全文
posted @ 2022-09-02 12:08 艾特玖 阅读(47) 评论(0) 推荐(0)
摘要:CF1114F Please, another Queries on Array? 题目大意 你有一个数组$a_1,a_2,\dots,a_n$。 现在你需要完成$q$次操作,有以下两种操作形式: MULTIPLY l r x,对于所有$i(l\le i\le r)$,将$a_i$乘上$x$。 TO 阅读全文
posted @ 2022-09-01 13:18 艾特玖 阅读(39) 评论(0) 推荐(0)