高级数据结构
文章平均质量分 67
邓汪涛
这个作者很懒,什么都没留下…
展开
-
甜甜圈(树状数组)(线段树)
文章目录1. 树状数组维护2.线段树维护题目描述艾洛喜欢吃甜食,他有n个甜甜圈,现在叠成了两叠(如下图所示),第一叠有n1n1n1个,第二叠有n2n2n2个(n1+n2=n)(n1+n2=n)(n1+n2=n),要解决的问题如下: 每个甜甜圈都有一个唯一的甜度值sis_isi,甜度值两两不同; 每次艾洛可以把任意一叠位于顶端的一个甜甜圈移动到另一叠顶端,若该甜甜圈是当前所有甜甜圈中最甜的(甜度值最大),那么艾洛不会移动甜甜圈,而是直接吃掉;请你求出艾洛吃完所有甜甜圈的最小移动原创 2021-07-18 18:23:06 · 254 阅读 · 1 评论 -
区间最大公约数 线段树 + 树状数组
区间最大公约数给定一个长度为 NNN 的数列 AAA,以及 MMM 条指令,每条指令可能是以下两种之一:C l r d,表示把 A[l],A[l+1],…,A[r]A[l],A[l+1],…,A[r]A[l],A[l+1],…,A[r]都加上 ddd。Q l r,表示询问 A[l],A[l+1],…,A[r]A[l],A[l+1],…,A[r]A[l],A[l+1],…,A[r] 的最大公约数(GCD)(GCD)(GCD)。对于每个询问,输出一个整数表示答案。输入格式第一行两个整数 N,MN原创 2021-03-31 20:22:14 · 213 阅读 · 1 评论 -
区间操作+区间查询(求和)——树状数组解法 & 线段树解法
文章目录区间操作+区间查询(求和)1. 树状数组+差分 解法:2. 线段树 解法:区间操作+区间查询(求和)给定一个长度为 NNN 的数列 AAA,以及 MMM 条指令,每条指令可能是以下两种之一:C l r d,表示把 A[l],A[l+1],…,A[r]A[l],A[l+1],…,A[r]A[l],A[l+1],…,A[r] 都加上 ddd。Q l r,表示询问数列中第 l∼rl∼rl∼r 个数的和。对于每个询问,输出一个整数表示答案。输入格式第一行两个整数 N,MN,MN,M。第二原创 2021-03-31 19:46:57 · 897 阅读 · 1 评论 -
《你能回答这些问题吗》线段树求区间最大连续子段和
你能回答这些问题吗《算法竞赛进阶指南》给定长度为 NNN 的数列 AAA,以及 MMM 条指令,每条指令可能是以下两种之一:1 x y,查询区间 [x,y][x,y][x,y] 中的最大连续子段和,即 maxx≤l≤r≤y∑i=lr[i]max_{x≤l≤r≤y}{∑_{i=l}^r[i]}maxx≤l≤r≤y∑i=lr[i]2 x y,把 A[x]A[x]A[x] 改成 yyy。对于每个查询指令,输出一个整数表示答案。输入格式第一行两个整数 N,MN,MN,M。第二行 NNN 个整原创 2021-03-30 15:46:29 · 137 阅读 · 0 评论