随笔分类 - 线段树
线段树
摘要:题目传送门 视频讲解 #include <bits/stdc++.h> using namespace std; typedef long long LL; //重定向输入输出 #define FILE_OUT freopen("P5494.out", "w", stdout); #define F
阅读全文
摘要:##$P2824$ [$HEOI2016$/$TJOI2016$]排序 一、题目大意 给一个序列, 两种操作, 一种是将$[l, r]$里所有数升序排列, 一种是降序排列。 所有操作完了之后, 问你$a[k]$等于多少。 二、解题思路 由于将一个普通序列排序很慢,需要$nlogn$的时间,可以转化为
阅读全文
摘要:##[$GSS5$ - $Can$ $you$ $answer$ $these$ $queries$ $V$](https://www.spoj.com/problems/GSS5/) [洛谷](https://www.luogu.com.cn/problem/SP2916) ### 一、题目大意
阅读全文
摘要:## [$GSS3$ - $Can$ $you$ $answer$ $these$ $queries$ $III$](https://www.luogu.com.cn/problem/SP1716) [SPOJ](https://www.spoj.com/problems/GSS3/en/) 与$G
阅读全文
摘要:## [$GSS1$ - $Can$ $you$ $answer$ $these$ $queries$ $I$](https://www.luogu.com.cn/problem/SP1043) [SPOJ](https://www.spoj.com/problems/GSS1/en/) 看题意看洛
阅读全文
摘要:题目传送门 一、题目大意 给你一个序列,你要在这个序列上进行操作。 操作$1$ 给定区间$[l,r]$,对序列中这个区间中每个数字累加求和。 操作$2$ 给定区间$[l,r]$ 和 $x$,对区间每个数字对$x$取模。 操作$3$ 给定两个数$i,k$,将$a[i]$的值修改为$k$。 二、思路 注
阅读全文
摘要:#include <cstdio> #include <cstring> #include <algorithm> #include <iostream> #include <cmath> using namespace std; typedef long long LL; const int N
阅读全文
摘要:##$GSS4$ - $Can$ $you$ $answer$ $these$ $queries$ $IV$ 一、题目描述 给定的$n$个数,我们定义两个操作,分别是区间开根号以及区间求和。共有$m$次查询,其中$n,m≤1e5$。 二、解题思路 一个$1e18$以内的数,经过最多$6$次开平方操作
阅读全文
摘要:##$POJ$ $2777$ $Count$ $Color$ 一、题目大意 题意:有$L$块连续的板子,每块板子最多染一种颜色,有$T$种($<=30$)颜色,刚开始将所有板子染成颜色$1$,$O$次操作(包括将$[a,b]$染成颜色$k$,和询问$[a,b]$的不同颜色数),输出每次询问的值。 二
阅读全文
摘要:题目传送门 讲解视频 一、题目大意 给一棵树,原来每个叶子节点上都有苹果,然后有$2$种操作,一是问以$x$为根节点的子树有多少苹果,二是更改某点的苹果数量。 二、解题思路 做法就是用$dfs$序把树形结构转化成线性结构也就是区间,然后用线段树维护。 先要求出每个点的$in$和$out$值,然后就给
阅读全文
摘要:##$Legacy$ 洛谷题目传送门 视频讲解 一、题目大意 二、解决思路 线段树优化建图的板子题 考虑暴力建图。显然不能通过此题。$1≤n,q≤10^5,1≤w≤10^9$,数量太大! 这时候就需要用线段树优化建图了。线段树优化建图就是 利用线段树,减少连边数量,从而降低复杂度。 基本思想 先建一
阅读全文
摘要:一、相关教程资源 线段树详解与实现 线段树与树状数组的视频教程,非常清晰,强烈推荐 二、单点修改 \(AcWing\) \(1275\). 最大数[单点修改区间查询] \(AcWing\) \(245\). 你能回答这些问题吗[单点修改区间查询] \(AcWing\) \(246\). 区间最大公约
阅读全文
摘要:题目传送门 讲解视频 零、总结 线段树的单点修改与区间查询 区间合并的维护 一、大致题意 有$n$个点排成一列,每个点与相邻的点互相连通。 现对区间【\(1\),\(n\)】进行以下三种操作: 破坏点$x$的连通性 询问点$x$所处的最大连通区间的长度 恢复最后被破坏的点连通性 二、解题思路 如何计
阅读全文
摘要:##[$HDU$ $3333$ $Turing$ $Tree$](http://acm.hdu.edu.cn/showproblem.php?pid=3333) ### 一、题目大意 给定长度为 $n$ 的数组以及 $q$ 次询问,每次询问给出一对 $l、r$,输出 $[l, r]$ 区间上所有互不
阅读全文
摘要:##[$POJ$ $3264$ $Balanced$ $Lineup$](http://poj.org/problem?id=3264) ### 一、大致题意 给定一组序列编号从$1-n$, 有$q$个询问, 每次询问$[l, r]$区间的最大值与最小值的 **差值**. ### 二、解题思路 -
阅读全文
摘要:##[$HDU$ $3577$ $Fast$ $Arrangement$](http://acm.hdu.edu.cn/showproblem.php?pid=3577) ### 一、题目解析 由于中国庞大的人口和站台,总是出现票的问题,现在政府需要你去开发一个新的查票系统。 一个火车只能载$k$个
阅读全文
摘要:##[$HDU$ $1698$ $Just$ $a$ $Hook$](http://acm.hdu.edu.cn/showproblem.php?pid=1698) ### 一、经验总结 * $HDU$ 是杭州电子科技大学的简称,$POJ$是北京大学$OJ$简称 * 因读入量较大,使用`cin`读入
阅读全文
摘要:原文链接 挖坑待填 一. 权值线段树 权值线段树即一种线段树,以序列的数值为下标。节点里所统计的值为节点所对应的区间 \([l,r]\) 中,\([l,r]\) 这个值域中所有数的出现次数。 举个例子,有一个长度为 \(10\) 的序列 {\(1,5,2,3,4,1,3,4,4,4\)}。 那么统计
阅读全文
摘要:##$AcWing$ $1277$. 维护序列 一、题目大意 老师交给小可可一个维护数列的任务,现在小可可希望你来帮他完成。 有长为 $N$ 的数列,不妨设为 $a_1,a_2,…,a_N$。 有如下三种操作形式: 把数列中的一段数全部乘一个值; 把数列中的一段数全部加一个值; 询问数列中的一段数的
阅读全文
摘要:##[$AcWing$ $247$. 亚特兰蒂斯](https://www.acwing.com/problem/content/249/) ### 一、题目描述 有几个古希腊书籍中包含了对传说中的亚特兰蒂斯岛的描述。 其中一些甚至包括岛屿部分地图。 但不幸的是,这些地图描述了亚特兰蒂斯的不同区域。
阅读全文