【模板】可持久化线段树 1(主席树)(luogu) (本人的模板) Description 题目背景 这是个非常经典的主席树入门题——静态区间第 kk 小数据已经过加强,请使用主席树。同时请注意常数优化 题目描述 如题,给定 nn 个整数构成的序列,将对于指定的闭区间查询其区间内的第 kk 小值。 ...
分类:
其他好文 时间:
2020-02-06 12:50:58
阅读次数:
61
线段树及其应用 [TOC] 线段树的几个基础操作:建树,单点查询,单点修改,区间查询,区间修改。其代码的主要思想为二分。参考博客: "https://blog.csdn.net/qq_39826163/article/details/81436440" 数据结构: 1.建树 建树的过程分为三步:1: ...
分类:
其他好文 时间:
2020-02-02 23:40:08
阅读次数:
91
# 题解 CF446C这是一道数据结构题。 我们先翻译下题目: 给你一个n,给你一个长度为n的序列,给你一个m,给你m此操作,包括区间修改和查询,修改为在一个区间内每个数加上他所对应的斐波那契数,查询为查询区间和。 一看到区间修改和区间查询,我们就可以知道这是一道线段树的题目(不要问我怎么知道的,~ ...
分类:
其他好文 时间:
2020-02-01 16:21:14
阅读次数:
80
预处理把左集划分为大小为1~i-1时,把全部元素都移动到右集的代价,记作sum[i]。 然后枚举终态时左集的大小,更新把元素i 留在/移动到 左集的代价。 树状数组/线段树处理区间修改/区间查询 1 #define HAVE_STRUCT_TIMESPEC 2 #include<bits/stdc+ ...
分类:
其他好文 时间:
2020-01-31 10:25:33
阅读次数:
71
题意: 告诉你n头奶牛的高度,然后给你一个区间,你需要求出这个区间最高的奶牛与最矮的奶牛之间相差多少 链接:http://poj.org/problem?id=3264 思路: 线段树区间查询,用两个查询函数,一个查最大值,另一个查最小值,将他们相减即可。 代码: #include <iostrea ...
分类:
其他好文 时间:
2020-01-21 21:43:28
阅读次数:
65
题意: hook有一根长度为n的棒,可以将它看成有n段,一开始每段都是铜,hook可以选择一段区间改变棒的属性, 棒有三种属性:铜=1,银=2,金=3,最后输出棒每段的属性总和。 链接:http://acm.hdu.edu.cn/showproblem.php?pid=1698 思路: 区间染色+区 ...
分类:
其他好文 时间:
2020-01-21 21:42:46
阅读次数:
77
题意: 给你n个数和2个操作,C操作是将一个区间内的每个数都加上k,Q操作是询问一个区间的和 链接:http://poj.org/problem?id=3468 思路: 线段树区间修改+区间查询 代码: #include <iostream> #include <stdio.h> #include ...
分类:
其他好文 时间:
2020-01-21 20:09:42
阅读次数:
82
板子:单点修改+区间查询 #include<bits/stdc++.h> using namespace std; struct Tree { int l,r; int dat; #define l(x) tree[x].l; #define r(x) tree[x].r; #define d(x) ...
分类:
其他好文 时间:
2020-01-01 09:31:57
阅读次数:
60
题目描述 如题,给定 nnn 个整数构成的序列,将对于指定的闭区间查询其区间内的第 kkk 小值。 输入格式 第一行包含两个正整数 n,mn,mn,m,分别表示序列的长度和查询的个数。 第二行包含 nnn 个整数,表示这个序列各项的数字。 接下来 mmm 行每行包含三个整数 l,r,k l, r, ...
分类:
其他好文 时间:
2019-12-31 15:58:34
阅读次数:
82
分块就是乱搞(确信 啥是分块 分块本质就是优雅的暴力,通过预处理和根号平衡(玄学地)让复杂度降低 比如我们考虑一个~~线段树裸~~题: 区间加,区间查询,$n 展开查看 cpp include using namespace std; define int long long inline int ...
分类:
其他好文 时间:
2019-12-11 13:11:06
阅读次数:
98