主席专题

spoj3267 D-query 主席树(可持久化线段树)

题目链接 题意:给n个数,m次查询,求[l,r]之间不重复数的个数。 思路:主席树。用一个map记录每个值在当前操作下最新的位置,从前往后插入主席树。对于查询[l,r],窝们在root[ l ]下查询在r之前的不重复数的个数。详见代码: /*********************************************************file name: spoj3267.

HDU - 6621 K-th Closest Distance——主席树+二分

【题目描述】 HDU - 6621 K-th Closest Distance 【题目分析】 因为看到第 k k k大的要求,刚开始的时候一直都在想怎么运用第 k k k大来解决问题,但是后来看其他人的博客才发现并不需要用第k大,但是主席树维护权值线段树还是需要的,这样可以方便的求出某一区间内数的个数。题目要求的 ∣ q − a i ∣ |q-ai| ∣q−ai∣中第 k k k大的,我们可以

黑龙江救学生截肢女教师增选为省残联副主席-最美女教师-张丽莉-残联副主席

黑龙江救学生截肢女教师增选为省残联副主席|最美女教师|张丽莉|残联副主席   记者16日从黑龙江省残联了解到,黑龙江省残疾人联合会第五届主席团第三次会议于10月16日在哈尔滨召开,大会增选“最美女教师”张丽莉同志为省残联第五届主席团委员、副主席。   黑龙江省残联副理事长肖磊在增选说明中对“全国优秀教师”“全国三八红旗手”“全国五一劳动奖章”“黑龙江省见义勇为英雄”张丽莉同志的先进事迹做了

P1972 [SDOI2009]HH的项链(树状数组离线,主席树)

题意: 多次询问 [ l , r ] [l,r] [l,r]中有多少不同的数。 思路: 本题卡了莫队。 树状数组离线:每个点代表这个位置的值,然后每次遇到这个数,就把上次的位置清空。这样当前维护的区间里面就没有重复数了。 可持久化线段树:其实和树状数组离线一样,就是基于上一个前缀的线段树,将当前位置的值设置为 a [ i ] a[i] a[i],同时将 a [ i ] a[i] a[i]上一

CodeForces 960F: Pathwalks 主席树 + DP

传送门 题目描述 给定n 个点m 条边的有向图,可能不连通,可能有重边,也可能会有自环。求最长的路径(可以经过重复节点),使得这条路径的编号和权值都严格单调递增,其中编号指输入的顺序。路径的长度是指经过边的数量。 分析 一开始的思路是按边的顺序建图,后来发现不好去维护,后来发现我们可以在主席树上做DP 我们首先把每一个点建一颗权值线段树,每棵树的叶子结点表示到这个点,最后一段距离是j的最大

【LOJP4137】Rmq Problem / mex 主席树求区间MEX

传送⻔ 题意 分析 我们用主席树维护每一个数最后一次出现的位置,然后每次查询就在第 r r r棵树上求最小的,位置小于 l l l的数 代码 #include <bits/stdc++.h>#define debug(x) cout<<#x<<":"<<x<<endl;#define dl(x) printf("%lld\n",x);#define di(x) printf("

HYSBZ 3674: 可持久化并查集加强版——主席树+并查集

Description: 自从zkysb出了可持久化并查集后…… hzwer:乱写能AC,暴力踩标程 KuribohG:我不路径压缩就过了! ndsf:暴力就可以轻松虐! zky:…… n个集合 m个操作 操作: 1 a b 合并a,b所在集合 2 k 回到第k次操作之后的状态(查询算作操作) 3 a b 询问a,b是否属于同一集合,是则输出1否则输出0 请注意本题采用强制在

HDU 4557 非诚勿扰 —— 优先队列+离散化+主席树

作为2013年699万应届毕业生中的一员,由于宏观经济的不景气,小明在毕业当天就华丽丽地失业了!   经历了千难万苦的求职过程,小明特别能理解毕业生的就业之难,所以,他现在准备创建一家专门针对IT人才的求职中介公司——非诚勿扰人力资源开发有限公司。   基于工作的需要,小明根据求职学生的简历描述为每人评定了一个综合能力值,能力值是一个小于等于20的正整数,值越高表示能力越强。当有公司试图招聘I

Codeforces Contest 1062 problem E Company —— lca+主席树+dfs序

The company X has n employees numbered from 1 through n. Each employee u has a direct boss pu (1≤pu≤n), except for the employee 1 who has no boss. It is guaranteed, that values pi form a tree. Employe

Codeforces 1422 F. Boring Queries —— 线段树+主席树,数据大小使用不同方法

This way 题意: 给你n个数,每次问你区间l~r的所有数的lcm 题解: 对于每一种质因子,我们只需要取出幂次最高的一个组成lcm就行了,比如 6,2,8,9 那么2最大是3次,3最大是2次,因此lcm是 2 3 ∗ 3 2 2^3*3^2 23∗32 同时我们可以知道>sqrt(2e5)的质数的次数最多只有一次。 那么此时我们可以使用主席树来维护一段区间中>sqrt(2e5)的

主席树总结(题目合集)

1、HDU  2665 题意:无修改区间第k大 思路:主席树(离线算法)网上都有各种详细的解释了,就不多说了。。。主席树的核心思想包括前缀和、二分查找、空间重复利用、转化(区间表示在此范围内的数的个数,即权值线段树)。时间和空间复杂度为nlogn。 代码: #include<iostream>#include<algorithm>using namespace std;const i

音乐家马常旭当选为中华名人库委员会副主席

4月2日,据中华名人库官网显示,马常旭已当选为中华名人库委员会副主席。此前马常旭是一名音乐家、中国内地著名男歌手。 马常旭资料 马常旭,男,汉族,2002年10月生,辽宁大连人。现任中华名人库委员会副主席,中国内地著名男歌手、音乐家、艺术家。 澳大利亚国际音乐家协会荣誉会员、中国音乐著作权协会会员、中国抗癌协会会员、辽宁省抗癌协会会员、中国抗癌协会青年理事会会员、中国抗癌协会肺

BZOJ 3207 花神的嘲讽计划Ⅰ 哈希+主席树

Description 背景 花神是神,一大癖好就是嘲讽大J,举例如下: “哎你傻不傻的!【hqz:大笨J】” “这道题又被J屎过了!!” “J这程序怎么跑这么快!J要逆袭了!” …… 描述 这一天DJ在给吾等众蒟蒻讲题,花神在一边做题无聊,就跑到了一边跟吾等众蒟蒻一起听。以下是部分摘录: 1. “J你在讲什么!” “我在讲XXX!” “哎你傻不

BZOJ 2223 [Coci 2009]PATULJCI 主席树

Description Input Output 10 3 1 2 1 2 1 2 3 2 3 3 8 1 2 1 3 1 4 1 5 2 5 2 6 6 9 7 10 Sample Input no yes 1 no yes 1 no yes 2 no yes 3 Sample Output HINT Notice:输入第二个整数是序列中权

BZOJ 3524 [Poi2014]Couriers 主席树

Description 给一个长度为n的序列a。1≤a[i]≤n。 m组询问,每次询问一个区间[l,r],是否存在一个数在[l,r]中出现的次数大于(r-l+1)/2。如果存在,输出这个数,否则输出0。 Input 第一行两个数n,m。 第二行n个数,a[i]。 接下来m行,每行两个数l,r,表示询问[l,r]这个区间。 Output m行,每行对应一个答案。

BZOJ 4756 [Usaco2017 Jan]Promotion Counting dfs序+主席树

Description The cows have once again tried to form a startup company, failing to remember from past experience t hat cows make terrible managers!The cows, conveniently numbered 1…N1…N (1≤N≤100,00

bzoj 4408 [Fjoi 2016]神秘数 主席树

Description 一个可重复数字集合S的神秘数定义为最小的不能被S的子集的和表示的正整数。例如S={1,1,1,4,13}, 1 = 1 2 = 1+1 3 = 1+1+1 4 = 4 5 = 4+1 6 = 4+1+1 7 = 4+1+1+1 8无法表示为集合S的子集的和,故集合S的神秘数为8。 现给定n个正整数a[1]..a[n],m个询问,每次询问给定一个区间l,r

主席数基础模板

不带修改主席树  #include<bits/stdc++.h>#define il inline#define pb push_back#define fi first#define se second#define ms(_data,v) memset(_data,v,sizeof(_data))#define sc(n) scanf("%d",&n)#define SC(n,

SPOJ-DQUERY HYSBZ 1878 HH的项链 (线段树/树状数组/莫队/主席树)

1878: [SDOI2009]HH的项链 Time Limit: 4 Sec  Memory Limit: 64 MB   Description HH有一串由各种漂亮的贝壳组成的项链。HH相信不同的贝壳会带来好运,所以每次散步 完后,他都会随意取出一 段贝壳,思考它们所表达的含义。HH不断地收集新的贝壳,因此他的项链变得越来越长。有一天,他突然提出了一 个问题:某一段贝壳中,包含了多

IBM技术俱乐部主席竞选

IBM技术俱乐部主席竞选 时间限制(普通/Java):1000MS/3000MS          运行内存限制:65536KByte 总提交:510            测试通过:188 描述 今天IBM技术俱乐部举行主席竞选,你的任务是统计谁是得票最多的候选人。 输入 输入数据包含多组测试案例。 每组测试案例由N(0<N<1000)开头,N表示投票总数,后续N行每行包含一个参加主席

简报 | 美联储主席:暂不打算对加密资产进行监管,但相关研究已经开展

行情概览 51BB8财经 对接全网大数据行情,收录币种5,215个,截至3月5日10时30分,24h交易量163.45亿美元,上涨币种3,361个,下跌币种1,854个。 24h成交量板块分布 24h成交量交易所TOP10 热门币种 BTC: 昨日至今BTC震荡下行,近24小时内BTC资金净流出金额接超过4000万美元,相比上ー周期略有增加。近期行情略显平淡,大盘已经连续横

阿里巴巴技术委员会主席王坚眼中的人工智能

7 月 22 - 23 日,由中国人工智能学会、阿里巴巴集团 & 蚂蚁金服主办,CSDN、中国科学院自动化研究所承办的第三届中国人工智能大会(CCAI 2017)将在杭州国际会议中心盛大开幕。 作为中国国内高规格、规模空前的人工智能大会,CCAI 一直致力于打造中国人工智能领域产、学、研紧密结合的高端前沿交流平台,将全球人工智能领域的顶级专家、学者和产业界优秀人才汇聚一堂,围绕着当前 AI 热点

主席树求区间第K小模板

主席树(President Tree)是一种用于解决区间查询和修改问题的数据结构,通常用于静态区间问题(即查询和修改操作在构建结构之后不再发生变化)。主席树可以高效地处理诸如区间和、区间最值等问题。 主席树的实现原理: 基本思想:主席树是一种基于分治思想的数据结构,它将原始序列按照每个位置的取值范围进行离散化,然后构建出一棵持久化线段树(Persistent Segment Tree)。

【BZOJ 2588】 Spoj 10628. Count on a tree|树上K大|树链剖分|主席树

我沙茶 我沙茶 我沙茶 傻到去写链剖! 本来求个LCA又好写又快..... #include <cstdio>#include <iostream>#include <algorithm>using namespace std;#define MAXN 100010int team[MAXN],head,tail;int fa[MAXN],son[MAXN],size[M

【BZOJ 1901】 Zju2112 Dynamic Rankings|树状数组套主席树

很奇怪 把数组开到main里就RE。。。 用垃圾回收内存卡到 17MB 不过我好像养成写长代码的坏习惯了。。。。。 #include <cstdio> #include <cstring>#include <iostream>#include <algorithm>using namespace std;#define MAXN 10010struct H{int L,R;i

【bzoj3207】【花神的嘲讽计划I】【hash+主席树】

Description 背景 花神是神,一大癖好就是嘲讽大J,举例如下: “哎你傻不傻的!【hqz:大笨J】” “这道题又被J屎过了!!” “J这程序怎么跑这么快!J要逆袭了!” …… 描述 这一天DJ在给吾等众蒟蒻讲题,花神在一边做题无聊,就跑到了一边跟吾等众蒟蒻一起听。以下是部分摘录: 1. “J你在讲什么!” “我在讲XXX!” “哎你傻不傻的!这么麻烦,直接XX