主席树
文章平均质量分 86
sunshinezff
啦啦啦啦啦
展开
-
【bzoj3207】【花神的嘲讽计划I】【hash+主席树】
Description背景花神是神,一大癖好就是嘲讽大J,举例如下:“哎你傻不傻的!【hqz:大笨J】”“这道题又被J屎过了!!”“J这程序怎么跑这么快!J要逆袭了!”……描述这一天DJ在给吾等众蒟蒻讲题,花神在一边做题无聊,就跑到了一边跟吾等众蒟蒻一起听。以下是部分摘录:1.“J你在讲什么!”“我在讲XXX!”“哎你傻不傻的!这么麻烦,直接原创 2016-03-18 16:52:49 · 392 阅读 · 0 评论 -
【bzoj4539】【HNOI2016】【树】【主席树】
Description 小A想做一棵很大的树,但是他手上的材料有限,只好用点小技巧了。开始,小A只有一棵结点数为N的树,结点的编号为1,2,…,N,其中结点1为根;我们称这颗树为模板树。小A决定通过这棵模板树来构建一颗大树。构建过程如下:(1)将模板树复制为初始的大树。(2)以下(2.1)(2.2)(2.3)步循环执行M次(2.1)选择两个数字a,b,其中1方(也就是说,原创 2016-06-19 22:07:51 · 412 阅读 · 0 评论 -
【bzoj4571】【SCOI2016】【美味】【主席树+贪心】
Description一家餐厅有 n 道菜,编号 1...n ,大家对第 i 道菜的评价值为 ai(1≤i≤n)。有 m 位顾客,第 i 位顾客的期望值为 bi,而他的偏好值为 xi 。因此,第 i 位顾客认为第 j 道菜的美味度为 bi XOR (aj+xi),XOR 表示异或运算。第 i 位顾客希望从这些菜中挑出他认为最美味的菜,即美味值最大的菜,但由于价格等因素,他只能从第原创 2016-06-16 22:54:08 · 1070 阅读 · 0 评论 -
【bzoj3123】【sdoi2013】【森林】【启发式合并+主席树】
DescriptionInput第一行包含一个正整数testcase,表示当前测试数据的测试点编号。保证1≤testcase≤20。 第二行包含三个整数N,M,T,分别表示节点数、初始边数、操作数。第三行包含N个非负整数表示 N个节点上的权值。 接下来 M行,每行包含两个整数x和 y,表示初始的时候,点x和点y 之间有一条无向边, 接下来 T行,每行描述一个操原创 2016-06-09 09:59:41 · 421 阅读 · 0 评论 -
【bzoj3653】【谈笑风生】【dfs序+主席树】
Description设T 为一棵有根树,我们做如下的定义:• 设a和b为T 中的两个不同节点。如果a是b的祖先,那么称“a比b不知道高明到哪里去了”。• 设a 和 b 为 T 中的两个不同节点。如果 a 与 b 在树上的距离不超过某个给定常数x,那么称“a 与b 谈笑风生”。给定一棵n个节点的有根树T,节点的编号为1 到 n,根节点为1号节点。你需要回答q 个询问原创 2016-06-02 15:07:38 · 581 阅读 · 0 评论 -
【bzoj3956】【Count】【主席树+单调栈】
DescriptionInputOutputSample Input3 2 02 1 21 11 3Sample Output03HINTM,N题解:可以发现点对数不会大于2*n,且点对之间不跨立. 所以我们可以先用单调栈求出所有的点对,主席树维护一下即可.原创 2016-06-02 14:59:49 · 1037 阅读 · 0 评论 -
【bzoj1926】【sdoi2010】【粟粟的书架】【二分+主席树】
DescriptionInput第一行是三个正整数R, C, M。 接下来是一个 R行C 列的矩阵,从上到下、从左向右依次给出了每本书的 页数Pi,j。 接下来 M行,第 i 行给出正整数x1i, y1i, x2i, y2i, Hi,表示第i 天的指定区域 是﹙x1i, y1i﹚与﹙x2i, y2i﹚间的矩形,总页数之和要求不低于 Hi。 保证 1≤x1i≤x2i≤R,1≤y1原创 2016-04-02 22:27:12 · 1239 阅读 · 0 评论 -
【bzoj2653】【middle】【主席树+二分答案】
Description 一个长度为n的序列a,设其排过序之后为b,其中位数定义为b[n/2],其中a,b从0开始标号,除法取下整。 给你一个长度为n的序列s。 回答Q个这样的询问:s的左端点在[a,b]之间,右端点在[c,d]之间的子序列中,最大的中位数。 其中a 位置也从0开始标号。 我会使用一些方式强制你在线。Input 第一行序列原创 2016-04-02 15:13:38 · 2141 阅读 · 0 评论 -
【bzoj1901】【Dynamic Rankings】【动态主席树】
Description给定一个含有n个数的序列a[1],a[2],a[3]……a[n],程序必须回答这样的询问:对于给定的i,j,k,在a[i],a[i+1],a[i+2]……a[j]中第k小的数是多少(1≤k≤j-i+1),并且,你可以改变一些a[i]的值,改变后,程序还能针对改变后的a继续回答上面的问题。你需要编一个这样的程序,从输入文件中读入序列a,然后读入一系列的指令,包括询问指令原创 2016-04-01 10:07:05 · 637 阅读 · 0 评论 -
【bzoj3524】【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]这个区间。Outputm行,每行对应一个原创 2015-09-21 15:40:00 · 1673 阅读 · 0 评论 -
【bzoj3551】【ONTAK2010】【peaks加强版】【主席树】
Description【题目描述】同3545Input第一行三个数N,M,Q。第二行N个数,第i个数为h_i接下来M行,每行3个数a b c,表示从a到b有一条困难值为c的双向路径。接下来Q行,每行三个数v x k,表示一组询问。v=v xor lastans,x=x xor lastans,k=k xor lastans。如果lastans=-1则不变。原创 2016-03-07 21:13:02 · 519 阅读 · 0 评论 -
【bzoj3514】【Codechef MARCH14 GERALD07加强版】【lct+主席树】
DescriptionN个点M条边的无向图,询问保留图中编号在[l,r]的边的时候图中的联通块个数。Input第一行四个整数N、M、K、type,代表点数、边数、询问数以及询问是否加密。接下来M行,代表图中的每条边。接下来K行,每行两个整数L、R代表一组询问。对于type=0的测试点,读入的L和R即为询问的L、R;对于type=1的测试点,每组询问的L、R应为L原创 2016-04-01 20:11:26 · 583 阅读 · 0 评论