数据结构
文章平均质量分 54
LaLaLa112138
这个作者很懒,什么都没留下…
展开
-
树链剖分
关于树链剖分 【懒得用手写所以直接在电脑上打了】 •用处: Q:在一棵树上进行路径的修改、求极值、求和 如果对树上的边进行编号,然后就变成对区间的操作了。就可以利用一些数据结构(如线段树等进行操作)而如何进行编号使得用线段树处理地尽量高效,就可以利用树链剖分来解决了。【所以树链剖分一般是作为一些数据结构的预处理出现的……吧】 •有重链剖分和长链剖分两种。 长链剖分考的好像不是很多(但SC原创 2017-06-09 12:21:35 · 266 阅读 · 0 评论 -
BZOJ 1202: [HNOI2005]狡猾的商人 并查集
1202: [HNOI2005]狡猾的商人Time Limit: 10 Sec Memory Limit: 162 MB Submit: 3934 Solved: 1896 [Submit][Status][Discuss]Description刁姹接到一个任务,为税务部门调查一位商人的账本,看看账本是不是伪造的。账本上记录了n个月以来的收入情况,其中第i 个月的收入额为Ai(i=1,2,3原创 2017-09-27 17:06:23 · 224 阅读 · 0 评论 -
BZOJ 4569: [Scoi2016]萌萌哒 并查集+倍增
4569: [Scoi2016]萌萌哒Time Limit: 10 Sec Memory Limit: 256 MB Submit: 1067 Solved: 511 [Submit][Status][Discuss]Description一个长度为n的大数,用S1S2S3…Sn表示,其中Si表示数的第i位,S1是数的最高位,告诉你一些限制条件,每个条 件表示为四个数,l1,r1,l2,r原创 2017-09-26 17:13:05 · 273 阅读 · 0 评论 -
HDU 3047 Zjnu Stadium 带权并查集
Z Zjnu StadiTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 4182 Accepted Submission(s): 1600Problem DescriptionIn 12th Zhejiang College Stu原创 2017-09-25 14:53:19 · 213 阅读 · 0 评论 -
POJ 1182 食物链 带权并查集
食物链Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 77869 Accepted: 23180Description动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B, B吃C,C吃A。 现有N个动物,以1-N编号。每个动物都是A,B,C中的一种,但是我们并不知道它到底是哪一原创 2017-09-23 17:28:43 · 243 阅读 · 0 评论 -
codevs 1029 遍历问题
1029 遍历问题 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题解 题目描述 Description 我们都很熟悉二叉树的前序、中序、后序遍历,在数据结构中常提出这样的问题:已知一棵二叉树的前序和中序遍历,求它的后序遍历,相应的,已知一棵二叉树的后序遍历和中序遍历序列你也能求出它的前序遍历。然而给定一棵二叉树的前序和后序,你却原创 2017-08-06 19:56:51 · 245 阅读 · 0 评论 -
HDU 1294 Minimum Inversion Number 树状数组
Minimum Inversion NumberTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 20752 Accepted Submission(s): 12446Problem DescriptionThe inversion原创 2017-07-29 08:56:52 · 294 阅读 · 0 评论 -
BZOJ 2038 小Z的袜子(hose) 莫队
2038: [2009国家集训队]小Z的袜子(hose)Time Limit: 20 Sec Memory Limit: 259 MB Submit: 10857 Solved: 4894 [Submit][Status][Discuss]Description作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿。终于有一天,小Z再也无法忍受这恼人的找袜子过程,于原创 2017-08-06 10:15:33 · 218 阅读 · 0 评论 -
BZOJ 3781 小B的询问 莫队
3781: 小B的询问Time Limit: 10 Sec Memory Limit: 128 MB Submit: 937 Solved: 632 [Submit][Status][Discuss]Description小B有一个序列,包含N个1~K之间的整数。他一共有M个询问,每个询问给定一个区间[L..R],求Sigma(c(i)^2)的值,其中i的值从1到K,其中c(i)表示数字i在原创 2017-08-05 17:07:47 · 343 阅读 · 0 评论 -
BZOJ 1724: [Usaco2006 Nov]Fence Repair 切割木板 堆
1724: [Usaco2006 Nov]Fence Repair 切割木板Time Limit: 5 Sec Memory Limit: 64 MB Submit: 1320 Solved: 692 [Submit][Status][Discuss]DescriptionFarmer John想修理牧场栅栏的某些小段。为此,他需要N(1<=N<=20,000)块特定长度的木板,第i块木板的原创 2017-09-27 17:40:13 · 305 阅读 · 0 评论 -
BZOJ 1150: [CTSC2007]数据备份Backup 链表
1150: [CTSC2007]数据备份BackupTime Limit: 10 Sec Memory Limit: 162 MB Submit: 2505 Solved: 1007 [Submit][Status][Discuss]Description 你在一家 IT 公司为大型写字楼或办公楼(offices)的计算机数据做备份。然而数据备份的工作是枯燥乏味 的,因此你想设计一个系统原创 2017-09-29 08:57:34 · 260 阅读 · 0 评论 -
NOIP 模拟赛 最大子矩形 单调栈
题解: 先预处理出以(i,j)为底的且都在j这一列的矩形的大小。即a[i][j]表示以(i,j)为底的矩形,宽为1,最长有多高。 然后对每一行进行扫描。 维护一个单调递增的单调栈。如果这一列的高度比栈顶低,就直接压入,否则就弹出栈(但要注意栈空的判断)。这样从左到右就可以得到向左,最多有多少行满足可以达到这一列的高度。同理,从右往左进行处理。 对于每一个位置都得到了一个满足这一个位置高度的最原创 2017-10-09 16:14:18 · 259 阅读 · 0 评论 -
BZOJ 1510: [POI2006]Kra-The Disks
1510: [POI2006]Kra-The DisksTime Limit: 5 Sec Memory Limit: 64 MB Submit: 411 Solved: 248 [Submit][Status][Discuss] Description Johnny 在生日时收到了一件特殊的礼物,这件礼物由一个奇形怪状的管子和一些盘子组成. 这个管子是由许多不同直径的圆筒(直径也可以相原创 2017-07-19 17:30:13 · 448 阅读 · 0 评论 -
BZOJ2054 疯狂的馒头 并查集
2054: 疯狂的馒头Time Limit: 10 Sec Memory Limit: 162 MB Submit: 974 Solved: 423 [Submit][Status][Discuss] DescriptionInput第一行四个正整数N,M,p,qOutput一共输出N行,第i行表示第i个馒头的最终颜色(如果最终颜色是白色就输出0)。Sample Input4 3 2 4原创 2017-07-17 09:03:43 · 491 阅读 · 0 评论 -
bzoj 4668 冷战 按秩合并并查集
4668: 冷战Time Limit: 10 Sec Memory Limit: 256 MB Submit: 366 Solved: 184 [Submit][Status][Discuss] Description1946 年 3 月 5 日,英国前首相温斯顿·丘吉尔在美国富尔顿发表“铁 幕演说”,正式拉开了冷战序幕。 美国和苏联同为世界上的“超级大国”,为了争夺世界霸权,两国及其原创 2017-07-14 21:39:45 · 250 阅读 · 0 评论 -
hdu 1512 Monkey King 左偏树(可并堆)
Monkey KingTime Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 6163 Accepted Submission(s): 2626Problem Description Once in a forest, there li原创 2017-07-14 21:01:01 · 300 阅读 · 0 评论 -
7.3 练习赛zi
zi【问题描述】 我们有 m+1棵树 ,分别是 T0,T1,…,Tm。其中 T0是一棵只有个点的树 ,点 的编号为 0。 生成第 i棵树我们需要五个参数 ai,bi,ci,di,li(ai,bi < i)。我们生成第 。我们生成第i棵树是 将第ai棵树的ci号点和第bi棵树的di号点用一条长度为li的边连接起来形成新的树 (不会改变原来两棵树 不会改变原来两棵树 不会改变原来两棵树 不会改变原创 2017-07-03 20:24:26 · 312 阅读 · 0 评论 -
BZOJ 1483: [HNOI2009]梦幻布丁 启发式合并链表
1483: [HNOI2009]梦幻布丁Time Limit: 10 Sec Memory Limit: 64 MB Submit: 3424 Solved: 1350 [Submit][Status][Discuss]DescriptionN个布丁摆成一行,进行M次操作.每次将某个颜色的布丁全部变成另一种颜色的,然后再询问当前一共有多少段颜色.例如颜色分别为1,2,2,1的四个布丁一共有3原创 2017-09-29 15:27:13 · 254 阅读 · 0 评论 -
POJ 1208 The Blocks Problem 链表
The Blocks ProblemTime Limit: 1000MS Memory Limit: 10000K Total Submissions: 6546 Accepted: 2811DescriptionMany areas of Computer Science use simple, abstract domains for both analytical and原创 2017-09-29 11:40:50 · 694 阅读 · 0 评论 -
HDU 3333 Turing Tree 可持久化线段树
Turing TreeTime Limit: 6000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 5415 Accepted Submission(s): 1921Problem DescriptionAfter inventing Turing Tree,原创 2017-07-28 09:02:47 · 328 阅读 · 0 评论 -
BZOJ 2821 作诗(Poetize) 分块
2821: 作诗(Poetize)Time Limit: 50 Sec Memory Limit: 128 MB Submit: 3135 Solved: 902 [Submit][Status][Discuss]Description神犇SJY虐完HEOI之后给傻×LYD出了一题:SHY是T国的公主,平时的一大爱好是作诗。由于时间紧迫,SHY作完诗 之后还要虐OI,于是SHY找来一篇长度原创 2017-08-05 08:54:24 · 253 阅读 · 0 评论 -
BZOJ 2243 染色 线段树+树链剖分
2243: [SDOI2011]染色Time Limit: 20 Sec Memory Limit: 512 MB Submit: 7964 Solved: 2987 [Submit][Status][Discuss]Description给定一棵有n个节点的无根树和m个操作,操作有2类: 1、将节点a到节点b路径上所有点都染成颜色c; 2、询问节点a到节点b路径上的颜色段数量(连续相同原创 2017-07-29 21:33:52 · 308 阅读 · 0 评论 -
BZOJ 1036: [ZJOI2008]树的统计Count 树链剖分+线段树
1036: [ZJOI2008]树的统计CountTime Limit: 10 Sec Memory Limit: 162 MB Submit: 17419 Solved: 7111 [Submit][Status][Discuss] Description 一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w。我们将以下面的形式来要求你对这棵树完成 一些操作: I. CHAN原创 2017-07-20 21:18:20 · 298 阅读 · 0 评论 -
BZOJ 1067: [SCOI2007]降雨量
1067: [SCOI2007]降雨量Time Limit: 1 Sec Memory Limit: 162 MB Submit: 5079 Solved: 1345 [Submit][Status][Discuss] Description 我们常常会说这样的话:“X年是自Y年以来降雨量最多的”。它的含义是X年的降雨量不超过Y年,且对于任意 Y<Z<X,Z年的降雨量严格小于X年。例如原创 2017-07-20 19:03:48 · 232 阅读 · 0 评论 -
线段树求和
依旧是单纯地存个板。 指针实现。 区间修改区间查询#include<cstdio>#include<cstring>#include<iostream>#define ll long longusing namespace std;const int N = 400010;int n,m;int a[N];struct node{ ll sum,flag; node *原创 2017-07-13 21:36:01 · 383 阅读 · 0 评论 -
hdu 3911 Black and White 线段树维护01序列
Black And WhiteTime Limit: 9000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 4996 Accepted Submission(s): 1509Problem Description There are a bunch of st原创 2017-07-14 19:23:42 · 467 阅读 · 0 评论 -
hdu 1754 I hate it 线段树维护最大值
I Hate ItTime Limit: 9000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 77426 Accepted Submission(s): 29792Problem Description 很多学校流行一种比较的习惯。老师们很喜欢询问,从某某到原创 2017-07-13 21:37:59 · 251 阅读 · 0 评论 -
树状数组
就只是单纯的存个板。没有讲解的那种。单点修改区间求和。#include<cstdio>#include<cstring>using namespace std;const int N = 100010;int n,m;int c[N];int lowbit(int x){ return x&(-x);}void adde(int i,int delta){ while(i<=原创 2017-07-13 21:21:53 · 165 阅读 · 0 评论 -
点分治
树的点分治 【感觉自己要搞的东西好多啊】 ·重心 ·重心的概念 与此点相连的结点数最多的连通块的结点数最小【感觉这个概念特别抽象】 即删去重心后,生成的多棵树尽可能平衡· 重心的性质 (1)所有点到某个点的距离和中,到重心的距离和是最小的;如果有两个重心,那么他们的距离和一样。 证明:感性理解一下应该是正确的,感觉有点像山区建小学那道,网上说是用调整法。 (2)把两个树通过一条边相连原创 2017-06-08 21:00:55 · 438 阅读 · 0 评论 -
POJ 2104 K-th Number 可持久化线段树
K-th NumberTime Limit: 20000MS Memory Limit: 65536K Total Submissions: 58315 Accepted: 20211 Case Time Limit: 2000MS DescriptionYou are working for Macrohard company in data structures de原创 2017-07-27 20:31:18 · 374 阅读 · 0 评论 -
BZOJ 1858 [Scoi2010]序列操作
1858: [Scoi2010]序列操作Time Limit: 10 Sec Memory Limit: 64 MB Submit: 2866 Solved: 1385 [Submit][Status][Discuss] Descriptionlxhgww最近收到了一个01序列,序列里面包含了n个数,这些数要么是0,要么是1,现在对于这个序列有五种变换操作和询问操作: 0 a b 把[a,原创 2017-07-21 20:04:28 · 256 阅读 · 0 评论 -
BZOJ 2724 蒲公英 分块
2724: [Violet 6]蒲公英Time Limit: 40 Sec Memory Limit: 512 MB Submit: 2247 Solved: 770 [Submit][Status][Discuss]DescriptionInput修正一下l = (l_0 + x - 1) mod n + 1, r = (r_0 + x - 1) mod n + 1OutputSample原创 2017-08-04 13:19:06 · 360 阅读 · 0 评论 -
BZOJ 2453: 维护队列&&BZOJ 2120 数颜色 分块
2453: 维护队列Time Limit: 10 Sec Memory Limit: 128 MB Submit: 1147 Solved: 533 [Submit][Status][Discuss]Description你小时候玩过弹珠吗? 小朋友A有一些弹珠,A喜欢把它们排成队列,从左到右编号为1到N。为了整个队列鲜艳美观,小朋友想知道某一段连续弹珠中,不同颜色的弹珠有多少。当然,A有原创 2017-08-03 20:07:54 · 251 阅读 · 0 评论 -
BZOJ 3343 教主的魔法 分块
3343: 教主的魔法Time Limit: 10 Sec Memory Limit: 256 MB Submit: 1594 Solved: 720 [Submit][Status][Discuss]Description教主最近学会了一种神奇的魔法,能够使人长高。于是他准备演示给XMYZ信息组每个英雄看。于是N个英雄们又一次聚集在了一起,这次他们排成了一列,被编号为1、2、……、N。原创 2017-08-03 13:38:52 · 287 阅读 · 0 评论 -
BZOJ 4592: [Shoi2015]脑洞治疗仪
4592: [Shoi2015]脑洞治疗仪Time Limit: 20 Sec Memory Limit: 256 MB Submit: 474 Solved: 209 [Submit][Status][Discuss] Description曾经发明了自动刷题机的发明家SHTSC又公开了他的新发明:脑洞治疗仪–一种可以治疗他因为发明而日益增大的脑洞的神秘装置。 为了简单起见,我们将大脑原创 2017-07-24 20:38:00 · 320 阅读 · 0 评论 -
BZOJ 3038: 上帝造题的七分钟2
3038: 上帝造题的七分钟2Time Limit: 3 Sec Memory Limit: 128 MB Submit: 1456 Solved: 623 [Submit][Status][Discuss] DescriptionXLk觉得《上帝造题的七分钟》不太过瘾,于是有了第二部。 “第一分钟,X说,要有数列,于是便给定了一个正整数数列。 第二分钟,L说,要能修改,于是便有了对一原创 2017-07-20 09:15:42 · 246 阅读 · 0 评论 -
BZOJ 3524 Couriers 可持久化线段树
3524: [Poi2014]CouriersTime Limit: 20 Sec Memory Limit: 256 MB Submit: 2310 Solved: 894 [Submit][Status][Discuss]Description给一个长度为n的序列a。1≤a[i]≤n。 m组询问,每次询问一个区间[l,r],是否存在一个数在[l,r]中出现的次数大于(r-l+1)/2。原创 2017-08-01 11:20:25 · 353 阅读 · 0 评论 -
BZOJ 1798 维护序列 seq
1798: [Ahoi2009]Seq 维护序列seqTime Limit: 30 Sec Memory Limit: 64 MB Submit: 6564 Solved: 2341 [Submit][Status][Discuss] Description老师交给小可可一个维护数列的任务,现在小可可希望你来帮他完成。 有长为N的数列,不妨设为a1,a2,…,aN 。有如下三种操作形式:原创 2017-07-19 21:12:27 · 267 阅读 · 0 评论 -
BZOJ 1593 : [Usaco2008 Feb]Hotel 旅馆
1593: [Usaco2008 Feb]Hotel 旅馆Time Limit: 10 Sec Memory Limit: 64 MB Submit: 750 Solved: 414 [Submit][Status][Discuss] Description奶牛们最近的旅游计划,是到苏必利尔湖畔,享受那里的湖光山色,以及明媚的阳光。作为整个旅游的策划者和负责人,贝茜选择在湖边的一家著名的旅原创 2017-07-23 16:49:59 · 412 阅读 · 0 评论 -
NOIP模拟赛 t3 nan
模拟赛的名字都好迷啊23333 nan 【问题描述】 我们有一个序列,现在他里面有三个数1,2,2 。我们从第三个数开始考虑: 1、第三个数是2,所以我们在序列后面写2个3,变成 1,2,2, 3, 3。 2、第四个数是3,所以我们在序列后面写3个4,变成 1, 2, 2, 3, 3, 4,4,4。 那么你可以看到,这个序列应该是 1,2,2,3,3,4,4,4,5,5,5,6,6,6,原创 2017-07-07 18:43:33 · 328 阅读 · 0 评论