————数据结构————
onepointo
欲言又止
展开
-
BZOJ 3688 树状数组优化DP 解题报告
3688: 折线统计Description二维平面上有n个点(xi, yi),现在这些点中取若干点构成一个集合S,对它们按照x坐标排序,顺次连接,将会构成一些连续上升、下降的折线,设其数量为f(S)。如下图中,1->2,2->3,3->5,5->6(数字为下图中从左到右的点编号),将折线分为了4部分,每部分连续上升、下降。 现给定k,求满足f(S) = k的S集合个数。Input第一行两个整数n和原创 2017-10-25 21:06:21 · 440 阅读 · 0 评论 -
2017.9.26 树链剖分+线段树 解题报告
Description 给出一颗树 三种操作 从u到v的简单路径上的所有点的值都增加v。 从u到v的简单路径上的所有点的值都变为v。 询问从u到v的简单路径上的所有点的值的和是否能表示成两个质数相加的和。【解题报告】 写起来浑身难受,可能是因为没有看黄历吧。 想着很简单,链剖+线段树(区间加,区间赋值,区间求和)+线筛判素数。 写着很恼火。代码如下:#pragma GCC optim原创 2017-09-26 16:51:27 · 513 阅读 · 0 评论 -
BZOJ 1067 [SCOI 2007] 线段树 解题报告
Description我们常常会说这样的话:“X年是自Y年以来降雨量最多的”。它的含义是X年的降雨量不超过Y年,且对于任意Y<Z<X,Z年的降雨量严格小于X年。例如2002,2003,2004和2005年的降雨量分别为4920,5901,2832和3890,则可以说“2005年是自2003年以来最多的”,但不能说“2005年是自2002年以来最多的”由于有些年份的降雨量未知,有的说法是可能正确也可以原创 2017-09-18 14:36:34 · 434 阅读 · 0 评论 -
POJ 1182 并查集 解题报告
食物链Description动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B, B吃C,C吃A。 现有N个动物,以1-N编号。每个动物都是A,B,C中的一种,但是我们并不知道它到底是哪一种。 有人用两种说法对这N个动物所构成的食物链关系进行描述: 第一种说法是”1 X Y”,表示X和Y是同类。 第二种说法是”2 X Y”,表示X吃Y。 此人对N个动物,用原创 2017-09-25 17:00:35 · 179 阅读 · 0 评论 -
BZOJ 3319 并查集 解题报告
3319: 黑白树Description给定一棵树,边的颜色为黑或白,初始时全部为白色。维护两个操作: 1.查询u到根路径上的第一条黑色边的标号。 2.将u到v 路径上的所有边的颜色设为黑色。 Notice:这棵树的根节点为1Input第一行两个数n,m分别表示点数和操作数。 接下来n-? 1行,每行2个数u,v.表示一条u到v的边。 接下来m行,每行为以下格式: 1 v 表原创 2017-09-25 10:15:48 · 318 阅读 · 0 评论 -
BZOJ 3211&3038 并查集+树状数组 解题报告
3211: 花神游历各国Description Input Output每次x=1时,每行一个整数,表示这次旅行的开心度Sample Input4 1 100 5 5 5 1 1 2 2 1 2 1 1 2 2 2 3 1 1 4Sample Output101 11 11HINT对于100%的数据, n ≤ 100000,m≤200000 ,data[i]非负且小于1原创 2017-09-25 11:14:51 · 216 阅读 · 0 评论 -
BZOJ 1012 线段树 解题报告
1012: [JSOI2008]最大数maxnumberDescription现在请求你维护一个数列,要求提供以下两种操作:1、 查询操作。语法:Q L 功能:查询当前数列中末尾L个数中的最大的数,并输出这个数的值。限制:L不超过当前数列的长度。2、 插入操作。语法:A n 功能:将n加上t,其中t是最近一次查询操作的答案(如果还未执行过查询操作,则t=0),并将所得结果对一个固定的常数D取模,将所原创 2017-08-28 18:40:34 · 276 阅读 · 0 评论 -
BZOJ 2741 分块+可持久化trie 解题报告
2741: 【FOTILE模拟赛】LDescriptionFOTILE得到了一个长为N的序列A,为了拯救地球,他希望知道某些区间内的最大的连续XOR和。 即对于一个询问,你需要求出max(Ai xor Ai+1 xor Ai+2 … xor Aj),其中l<=i<=j<=r。 为了体现在线操作,对于一个询问(x,y): l = min ( ((x+lastans) mod N)+1 , ((y原创 2017-08-15 16:54:57 · 252 阅读 · 0 评论 -
BZOJ 2124 树状数组+Hash 解题报告
2124: 等差子序列Description给一个1到N的排列{Ai},询问是否存在1<=p1=3),使得Ap1,Ap2,Ap3,…ApLen是一个等差序列。Input输入的第一行包含一个整数T,表示组数。下接T组数据,每组第一行一个整数N,每组第二行为一个1到N的排列,数字两两之间用空格隔开。Output对于每组数据,如果存在一个等差子序列,则输出一行“Y”,否则输出一行“N”。Sample In原创 2017-08-14 15:55:30 · 277 阅读 · 0 评论 -
BZOJ 3687 bitset 解题报告
3687: 简单题Description小呆开始研究集合论了,他提出了关于一个数集四个问题: 1.子集的异或和的算术和。 2.子集的异或和的异或和。 3.子集的算术和的算术和。 4.子集的算术和的异或和。 目前为止,小呆已经解决了前三个问题,还剩下最后一个问题还没有解决,他决定把 这个问题交给你,未来的集训队队员来实现。Input第一行,一个整数n。 第二行,n个正整数,表示01,a2原创 2017-08-04 17:20:41 · 331 阅读 · 0 评论 -
BZOJ 2038 莫队 解题报告
2038: [2009国家集训队]小Z的袜子(hose)Description作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿。终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命…… 具体来说,小Z把这N只袜子从1到N编号,然后从编号L到R(L 尽管小Z并不在意两只袜子是不是完整的一双,甚至不在意两只袜子是否一左一右,他却很在意袜子的颜色,毕竟穿两只原创 2017-08-04 16:01:54 · 214 阅读 · 0 评论 -
BZOJ 1036 [ZJOI 2008] 树链剖分 解题报告
1036: [ZJOI2008]树的统计CountDescription一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w。我们将以下面的形式来要求你对这棵树完成一些操作: I. CHANGE u t : 把结点u的权值改为t II. QMAX u v: 询问从点u到点v的路径上的节点的最大权值 III. QSUM u v: 询问从点u到点v的路径上的节点的权值和 注意:从点u到点v的路径原创 2017-09-26 21:45:49 · 200 阅读 · 0 评论 -
POJ 3784 对顶堆动态维护中位数 解题报告
Running MedianDescriptionFor this problem, you will write a program that reads in a sequence of 32-bit signed integers. After each odd-indexed value is read, output the median (middle value) of the ele原创 2017-09-27 18:30:16 · 273 阅读 · 0 评论 -
Codeforces 870E 并查集 解题报告
Points, Lines and Ready-made TitlesYou are given n distinct points on a plane with integral coordinates. For each point you can either draw a vertical line through it, draw a horizontal line through it原创 2017-10-15 22:02:38 · 379 阅读 · 0 评论 -
BZOJ 5071 [Lydsy 十月月赛] 排序 解题报告
Description小A成为了一个数学家,他有一串数字A1,A2…An 每次可以进行如下操作,选择一个数字i,将(Ai-1,Ai,Ai+1) 变为(Ai-1 + Ai,-Ai,Ai+1 + Ai),特别地,若i=N,则(An-1,An)变为 (An-1 + An,-An).小A很好奇,能否通过若干次操作,得到他的幸运数列B1,B2…Bn.可是他太小,不会算,请你帮帮他【解题报告】(ai−1,原创 2017-10-30 21:51:01 · 469 阅读 · 0 评论 -
BZOJ 4881 [Lydsy2017年5月月赛] 二分图染色+线段树
4881: [Lydsy2017年5月月赛]线段游戏Descriptionquailty和tangjz正在玩一个关于线段的游戏。在平面上有n条线段,编号依次为1到n。其中第i条线段的两端点坐 标分别为(0,i)和(1,p_i),其中p_1,p_2,…,p_n构成了1到n的一个排列。quailty先手,他可以选择一些互不相交 的线段,将它们拿走,当然他也可以一条线段也不选。然后tangjz必须拿走原创 2017-10-30 21:09:38 · 375 阅读 · 0 评论 -
BZOJ 1529 [POI 2005] 并查集 解题报告
1529: [POI2005]ska Piggy banksDescriptionByteazar 有 N 个小猪存钱罐. 每个存钱罐只能用钥匙打开或者砸开. Byteazar 已经把每个存钱罐的钥匙放到了某些存钱罐里. Byteazar 现在想买一台汽车于是要把所有的钱都取出来. 他想尽量少的打破存钱罐取出所有的钱,问最少要打破多少个存钱罐.Input第一行一个整数 N (1 <= N <= 1.原创 2017-10-12 20:53:21 · 195 阅读 · 0 评论 -
BZOJ 1103 [POI 2007] dfs序+树状数组 解题报告
1103: [POI2007]大都市megDescription在经济全球化浪潮的影响下,习惯于漫步在清晨的乡间小路的邮递员Blue Mary也开始骑着摩托车传递邮件了。不过,她经常回忆起以前在乡间漫步的情景。昔日,乡下有依次编号为1..n的n个小村庄,某些村庄之间有一些双向的土路。从每个村庄都恰好有一条路径到达村庄1(即比特堡)。并且,对于每个村庄,它到比特堡的路径恰好只经过编号比它的编号小的村庄原创 2017-07-20 11:28:24 · 292 阅读 · 0 评论 -
BZOJ 1483 [HNOI 2009] 启发式合并链表 解题报告
1483: [HNOI2009]梦幻布丁DescriptionN个布丁摆成一行,进行M次操作.每次将某个颜色的布丁全部变成另一种颜色的,然后再询问当前一共有多少段颜色.例如颜色分别为1,2,2,1的四个布丁一共有3段颜色.Input第一行给出N,M表示布丁的个数和好友的操作次数. 第二行N个数A1,A2…An表示第i个布丁的颜色从第三行起有M行,对于每个操作,若第一个数字是1表示要对颜色进行改变,其原创 2017-09-29 20:44:15 · 222 阅读 · 0 评论 -
BZOJ 2212 [Poi 2011] 线段树合并 解题报告
2212: [Poi2011]Tree RotationsDescription现在有一棵二叉树,所有非叶子节点都有两个孩子。在每个叶子节点上有一个权值(有n个叶子节点,满足这些权值为1..n的一个排列)。可以任意交换每个非叶子节点的左右孩子。 要求进行一系列交换,使得最终所有叶子节点的权值按照遍历序写出来,逆序对个数最少。Input第一行n 下面每行,一个数x 如果x==0,表示这个节点非叶原创 2017-09-29 11:13:18 · 239 阅读 · 0 评论 -
BZOJ 2733 [HNOI 2012] 线段树合并 解题报告
2733: [HNOI2012]永无乡Description永无乡包含 n 座岛,编号从 1 到 n,每座岛都有自己的独一无二的重要度,按照重要度可 以将这 n 座岛排名,名次用 1 到 n 来表示。某些岛之间由巨大的桥连接,通过桥可以从一个岛 到达另一个岛。如果从岛 a 出发经过若干座(含 0 座)桥可以到达岛 b,则称岛 a 和岛 b 是连 通的。现在有两种操作:B x y 表示在岛 x 与岛原创 2017-09-28 21:44:41 · 204 阅读 · 0 评论 -
2017.9.28 线段树永久标记 解题报告
Description给出m个事件。 1. 在坐标系中给出从(x1,y1)到(x2,y2)的线段 2. 询问当在x坐标为a时,与最低的线段的高度,给出此时y的坐标。Input第一行一个整数m,表示事件数。 接下来m行,每行有若干正整数,第一个数D表示事件类型。 若D=1,表示添加一条线段,四个整数x1,y1,x2,y2。 若D=2,接下来一个正整数a,询问在x=a处的答案。 对于100%原创 2017-09-28 19:43:16 · 250 阅读 · 0 评论 -
BZOJ 3781 莫队 解题报告
3781: 小B的询问Description小B有一个序列,包含N个1~K之间的整数。他一共有M个询问,每个询问给定一个区间[L..R],求Sigma(c(i)^2)的值,其中i的值从1到K,其中c(i)表示数字i在[L..R]中的重复次数。小B请你帮助他回答询问。Input第一行,三个整数N、M、K。 第二行,N个整数,表示小B的序列。 接下来的M行,每行两个整数L、R。OutputM行,每行原创 2017-09-27 20:53:30 · 204 阅读 · 0 评论 -
POJ 2155 二维树状数组 解题报告
MatrixDescriptionGiven an N*N matrix A, whose elements are either 0 or 1. A[i, j] means the number in the i-th row and j-th column. Initially we have A[i, j] = 0 (1 <= i, j <= N). We can change the m原创 2017-08-03 19:01:06 · 208 阅读 · 0 评论 -
Codeforces 438D 线段树 解题报告
D. The Child and SequenceAt the children’s day, the child came to Picks’s house, and messed his house up. Picks was angry at him. A lot of important things were lost, in particular the favorite sequenc原创 2017-08-03 16:20:21 · 474 阅读 · 0 评论 -
HDU 1394 线段树统计逆序对 解题报告
Minimum Inversion NumberProblem DescriptionThe inversion number of a given number sequence a1, a2, …, an is the number of pairs (ai, aj) that satisfy i < j and ai > aj. For a given sequence of numbers原创 2017-08-03 15:10:07 · 316 阅读 · 0 评论 -
BZOJ 1145 [CTSC 2008] 树状数组+组合数学
1145: [CTSC2008]图腾totemDescription在完成了古越州圆盘密码的研究之后,考古学家小布来到了南美大陆的西部。相传很久以前在这片土地上生活着两个部落,一个部落崇拜闪电,另一个部落崇拜高山,他们分别用闪电和山峰的形状作为各自部落的图腾。小布的团队在山洞里发现了一幅巨大的壁画,壁画上被标记出了N个点,经测量发现这N个点的水平位置和竖直位置是两 两不同的。小布认为这幅壁画所包含原创 2017-07-14 21:13:02 · 506 阅读 · 0 评论 -
HDU 1512 可并堆(左偏树) 解题报告
Monkey KingProblem DescriptionOnce in a forest, there lived N aggressive monkeys. At the beginning, they each does things in its own way and none of them knows each other. But monkeys can’t avoid quarr原创 2017-07-14 12:02:45 · 418 阅读 · 0 评论 -
学习一个ZKW线段树
zkw线段树转载 2017-06-03 16:11:35 · 364 阅读 · 0 评论 -
POJ 2750 线段树 题解
POJ 2750Potted Flower原创 2017-03-27 16:00:11 · 370 阅读 · 0 评论 -
POJ 2104 主席树 题解
POJ2104原创 2017-03-28 10:07:48 · 309 阅读 · 0 评论 -
POJ 3237 树链剖分 题解
POJ3237原创 2017-03-29 12:10:44 · 376 阅读 · 0 评论 -
BZOJ 1588 TREAP 解题报告
bzoj1588原创 2017-05-26 10:05:32 · 239 阅读 · 0 评论 -
BZOJ 3223 Splay 解题报告
bzoj3223原创 2017-05-26 16:29:41 · 195 阅读 · 0 评论 -
BZOJ 3224 TREAP 解题报告
bzoj3224原创 2017-05-26 16:38:15 · 260 阅读 · 0 评论 -
HDU 1166 线段树 解题报告
敌兵布阵Problem DescriptionC国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了。A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情况。由于采取了某种先进的监测手段,所以每个工兵营地的人数C国都掌握的一清二楚,每个工兵营地的人数都有可能发生变动,可能增加或减少若干人手,但这些都逃不过C国的监视。原创 2017-07-16 11:56:39 · 454 阅读 · 0 评论 -
HDU 1754 线段树 解题报告
I Hate ItProblem Description很多学校流行一种比较的习惯。老师们很喜欢询问,从某某到某某当中,分数最高的是多少。 这让很多学生很反感。 不管你喜不喜欢,现在需要你做的是,就是按照老师的要求,写一个程序,模拟老师的询问。当然,老师有时候需要更新某位同学的成绩。Input本题目包含多组测试,请处理到文件结束。 在每个测试的第一行,有两个正整数 N 和 M ( 0 < N<原创 2017-07-16 15:58:57 · 510 阅读 · 0 评论 -
BZOJ 2351 [BeiJing 2011] 字符串Hash 解题报告
2351: [BeiJing2011]MatrixDescription给定一个M行N列的01矩阵,以及Q个A行B列的01矩阵,你需要求出这Q个矩阵哪些在原矩阵中出现过。 所谓01矩阵,就是矩阵中所有元素不是0就是1。Input输入文件的第一行为M、N、A、B,参见题目描述。 接下来M行,每行N个字符,非0即1,描述原矩阵。 接下来一行为你要处理的询问数Q。 接下来Q个矩阵,一共Q*A行,每原创 2017-07-25 15:04:39 · 228 阅读 · 0 评论 -
ZOJ 2112 分块 解题报告
The Company Dynamic Rankings has developed a new kind of computer that is no longer satisfied with the query like to simply find the k-th smallest number of the given N numbers. They have developed a m原创 2017-07-19 21:00:00 · 298 阅读 · 0 评论 -
BZOJ 2049 [Sdoi 2008] LCT 解题报告
2049: [Sdoi2008]Cave 洞穴勘测Description辉辉热衷于洞穴勘测。某天,他按照地图来到了一片被标记为JSZX的洞穴群地区。经过初步勘测,辉辉发现这片区域由n个洞穴(分别编号为1到n)以及若干通道组成,并且每条通道连接了恰好两个洞穴。假如两个洞穴可以通过一条或者多条通道按一定顺序连接起来,那么这两个洞穴就是连通的,按顺序连接在一起的这些通道则被称之为这两个洞穴之间的一条路径。原创 2017-07-19 15:42:39 · 217 阅读 · 0 评论