链接:http://acm.hdu.edu.cn/showproblem.php?pid=4417 题意: 给你段长为n的序列,有q个询问,每次询问区间[l.r]内有多少个数小于等于k 思路: 之前用分块写过类似的,不过为了练习下主席树,这里用主席树写了下。思路很简单 离线离散化处理下,每次插入一个 ...
分类:
其他好文 时间:
2018-08-31 22:46:50
阅读次数:
278
给n个数字与q次询问,每次询问找出区间不同数字的个数并输出在这个区间里第"(个数+1)/2"次出现的数字。每个数字只有第一次出现会被计数。 考虑主席树对区间不同个数的统计是基于重复的数字只保留最后出现的那次也就是说我们可以找到从后往前数字第一次出现的计数。 但现在要求的是从前向后,考虑从后向前建立主 ...
分类:
其他好文 时间:
2018-08-31 21:56:24
阅读次数:
215
补一补之前听课时候的题。 考虑使用dij算法求最短路,因为边权存不下,所以考虑用主席树维护二进制位,因为每一次都只会在一个位置进行修改,所以可以暴力进位,这样均摊复杂度是对的。 《算法导论》给了证明:对于一个有$k$位的二进制计数器,假设每一次都从第0位$+1$,那么我们发现执行$n$次加法之后,发 ...
分类:
其他好文 时间:
2018-08-31 14:07:53
阅读次数:
189
主席树求区间小于某个数的数的个数模板(静态) #include <bits/stdc++.h> using namespace std; const int M = 1e5+7; int _,n,q,a[M],ls[M],tot,sz,pos,cas=1; int L[20*M],R[20*M],T ...
分类:
其他好文 时间:
2018-08-31 14:02:55
阅读次数:
155
1 /** 2 * Copyright(c) 3 * All rights reserved. 4 * Author : @klay 5 * Date : 2018-08-27-16.18.54 6 * Description 主席树模板动态第k小 7 */ 8 #include 9 #includ... ...
分类:
其他好文 时间:
2018-08-28 18:52:29
阅读次数:
145
/* 主席树入门 从一个题目切入吧 HDU6230 Palindrome 最后转化成求区间[l,r]里面有几个数比x小 一开始就想无脑主席树 之前只会了一个板子 很不灵活 只会查第k小 然后二分i是第几小,套上主席树 这时候会多一个二分logn 然后跑的比较慢在超时的边缘试探 然后看到了划分树这个东... ...
分类:
其他好文 时间:
2018-08-27 21:21:40
阅读次数:
152
传送门 如标题,主席树模板 稍微介绍一下主席树.. 主席树是很多个线段树的结合体 利用了单点修改不会更新太多节点的结论(反正这一题是这样..),后一个线段树借用前面线段树的节点,而对于更新的节点才开一个新的节点存储数据,大大的节省了时间和空间 (除第一颗树外其他树的构建只要log(n)的时间和空间) ...
分类:
其他好文 时间:
2018-08-26 12:02:18
阅读次数:
126
我是萌新刚学OI,请问LCT怎么写常树最小啊 我是女生刚学OI,请问树链剖分哪里写挂了? 萌新求教,这棵SBT哪里有问题啊啊啊…… 刚学OI,请问可持久化非确定状态AC自动分块维护线段平衡仙人掌优化最小费用最大流预处理混合图上莫比乌斯反演莫队带花舞蹈链并查集树状数组套主席树预处理动态DP分治FFT求 ...
分类:
其他好文 时间:
2018-08-25 11:25:47
阅读次数:
213
"可持久化并查集" 题意 如题。 解法 我们考虑用主席树来维护每一个版本中,x的father,因为我们要做到可持久化, ~~所以我们不能压缩路径(可能吧)~~ ,我们就需要用到启发式合并。每次将深度较浅的合并到深度较大的集合中,并且,如果两个集合深度相同了的话,将其中的一个深度+1。剩下的就是主席树 ...
分类:
其他好文 时间:
2018-08-24 22:56:56
阅读次数:
209
"可持久化普通平衡树" 题意 如题。 解法 大家都知道,用权值线段树可以过普通平衡树那道题,那么对于可持久化普通平衡树,我们是否也可以用主席树来搞一搞呢。答案是肯定的。只需要动态开点就行了。其他的跟普通平衡树那道题一模一样。 代码 这里需要注意一点,当 l 和 r 都是负数的时候, /2 就会有问题 ...
分类:
其他好文 时间:
2018-08-24 22:55:20
阅读次数:
214