
线段树
xyc1719
努力会说谎,但努力不会是白费
展开
-
ISIJ 2018 奇怪的字符串
ISIJ 2018 奇怪的字符串(Training Round D6T1)题目名称:奇怪的字符串文件名称:strange.in / strange.out题目描述考虑字符串 s 仅由小写字母组成,例如 “abba”。定义 W(s) 为 s 所有本质不同的连续子串的集合,例如 W(“abba”) = { “a”,”b”,”ab”,”ba”,”bb”,”abb”,”bba”,”...原创 2018-08-16 18:30:31 · 631 阅读 · 0 评论 -
国庆七连测(五)(AK.cpp)
什么破标题【一句话题意】 给定一个长度为n的序列。有m个询问,每次询问[l,r]的序列和,并将区间内所有数平方。【分析】通过打表发现当一个数平方几十次之后他就会陷入一个平方不变的循环。我们可以暴力修改每个数,并用线段树(树状数组或者分块)维护区间和,用并查集优化修改时的扫描次数。(这是第几次用并查集合并区间了,管他呢)。Code:#include<cstdio>#includ...原创 2018-10-05 15:44:00 · 144 阅读 · 0 评论 -
树套树学习笔记
题目:传送门这是第一类入门级的树套树,线段树/树状数组套平衡树。用线段树或树状数组维护区间,再用平衡树维护对区间中的动态修改。有人可能会疑惑为什么为每个区间开一棵平衡树不会MLE呢?我们以线段树为例,每一层的线段树的节点数都为n,至多有logn层。为每一个区间开一棵和区间大小相同的平衡树,总的平衡树大小只会在nlogn左右。...原创 2018-11-01 18:54:19 · 5304 阅读 · 0 评论 -
决赛 【数据结构】【排序】【贪心】
【一句话题意】题目大意:有 题目大意:有 N类询问 区间 [l[i],r[i]]各 s[i] 个。有 M类可用区间 [l[i],r[i]]各t[i] 个,现在要对每个询问区间配对上一个包含它的可用区间。n,m<=4e5【分析】先按左端点排序n+m个区间(当节点数相同时可用区间在前),如果是可用区间相当于在ri点添加了ti个点。如果是询问区间,则贪心删去在ri点及其右边的si个后继,如果不...原创 2018-11-06 16:19:21 · 142 阅读 · 0 评论 -
奇洛金卡达 father.cpp
(我还能怎样,能怎样,最后还不是像父亲一样把你原谅 ——鲁迅)【简化题意】给一个长度小于k的字符串和n个操作。保证操作后字符串长度大于k,求最后的字符串中前k个字符。操作规则如下:给定一个(伪)区间[l,r],将区间中编号为奇数的字符形成一个新字符串,编号为偶数的字符形成一个字符串,将两个字符串拼接起来并放在编号为r字符的后边。n<=5000,k<=3e6【分析】传统...原创 2019-01-26 15:40:30 · 487 阅读 · 0 评论 -
最近的叶子
题目来源:CF1110F【简要题意】给一棵有边权的树,已知各点编号的等于该点的dfs序。求对于每个vi,li,ri,求li到ri中到vi距离最小的叶子结点到vi的距离。【分析】暴力树形dp有70分就果断写完去搞T2,结果T2愣是没有结果。。。。又是一道方便离线维护的题。和2月24日卡常数那道题颇为相似。考虑从u到v边权为c,显然有所有v的子树点距离-c,其余点距离+c,回溯也也是一个Θ(l...原创 2019-03-10 20:18:10 · 164 阅读 · 1 评论