九条可怜是一个喜欢数据结构的女孩子,在常见的数据结构中,可怜最喜欢的就是线段树。
现在可怜手上有一棵 $[1,n]$ 上的线段树,编号为 $1$。这棵线段树上的所有节点的 tag? 均为 $0$。接下来可怜进行了 $m$ 次操作,操作有两种:
- $1\ l\ r$,假设可怜当前手上有 $t$ ... ...
分类:
其他好文 时间:
2020-06-10 14:42:13
阅读次数:
55
keoj226 正解 把每一行当成一个字符串插入 trie 树。 对于一个左端点, trie 树上相同的节点表示一类相同的字符串(用 set 记录等价类)。 左端点往右边移动怎么做呢 ? 重新插入 trie 树 ? 类似线段树合并的 trie 树合并 + set 启发式合并即可。 复杂度顶满是所有的 ...
分类:
其他好文 时间:
2020-06-08 20:56:06
阅读次数:
94
第一题由于过水,就没写awa 大概就是这样了。题意就是求一个最长的区间使得区间的左边是它的最小值,区间右边是他的最大值第一个想法肯定是暴力枚举啦awa但是这个是O(n^3)的,绝对的不可过awa 思考性质awa发现我们枚举每个区间的左右端点,其实有大量的不合法的计算的也就是没有用的枚举。 考虑怎么避 ...
分类:
其他好文 时间:
2020-06-08 18:50:11
阅读次数:
57
考试拿到题,一看,这不是权值线段树吗? 思路 使用线段树每个节点维护该区间内元素出现次数。 根据题目,对于加入、删除元素,我们可以单点修改(\(+1\)、\(-1\)),对于输出,我们可 随便 遍历找一个出现次数为 $1$ 的元素即可。 代码 具体解释见注释 #include<bits/stdc++ ...
分类:
其他好文 时间:
2020-06-07 10:45:19
阅读次数:
52
同 Luogu P3373 注意如果写 pushup 的话不要越界 注意更新 sum 值的位置 # include <iostream> # include <cstdio> # define MAXN 100000+5 # define LL long long using namespace s ...
分类:
其他好文 时间:
2020-06-05 19:30:00
阅读次数:
44
福建省队集训 20180709 green 对于排列,r-l+1=max-min+1 可以用单调栈+线段树,维护以当前点位右端点的时候的max-min+l,总修改次数是O(n)的 然后出现10次也差不多,分成10段然后每段有自己的式子,每个点维护10个信息分别查询即可。 equip 给m条边2n个点 ...
分类:
其他好文 时间:
2020-06-05 13:28:25
阅读次数:
59
看了题,A,B题都是lojround原题(A题其实也是JOI2013原题)。 而且部分分都一样。。。。。。。。。。。。。。。。。。 但是B忘了。 A题就是个扫描线+单调栈+线段树。 随便写一下就跳到C C题暴力死活不会,但是20分是送的就写了。 从“数列的相似性”想了很久,但是还是不会,十分自闭。 ...
分类:
其他好文 时间:
2020-06-05 13:12:02
阅读次数:
54
删数 对于任意一个数列,如果能在有限次进行下列删数操作后将其删为空数列,则称这个数列可以删空。一次删数操作定义如下: 记当前数列长度为 \(k\),则删掉数列中所有等于 \(k\) 的数。 现有一个长度为 \(n\) 的数列 \(a\),有 \(m\) 次修改操作,第 \(i\) 次修改后你要回答: ...
分类:
其他好文 时间:
2020-06-03 20:29:52
阅读次数:
69
html <view class="person-info"> <image class="head-img" src="/images/tmp/demo.png" /> <view class="person-detail"> <view class="user-name"> 张三 <text c ...
分类:
其他好文 时间:
2020-06-03 13:47:31
阅读次数:
61
1057 Stack (30分) Stack is one of the most fundamental data structures, which is based on the principle of Last In First Out (LIFO). The basic operatio ...
分类:
其他好文 时间:
2020-06-03 00:45:45
阅读次数:
80