03 2017 档案

[bzoj4552][Tjoi2016&Heoi2016]排序-二分+线段树
摘要:Brief Description DZY有一个数列a[1..n],它是1∼n这n个正整数的一个排列。 现在他想支持两种操作: 0, l, r: 将a[l..r]原地升序排序。 1, l, r: 将a[l..r]原地降序排序。 操作完后,他会给你指定一个位置k,请你告诉他a[k]的值。 Algori 阅读全文

posted @ 2017-03-24 21:39 蒟蒻konjac 阅读(730) 评论(0) 推荐(0)

[bzoj4551][Tjoi2016&Heoi2016]树-树链剖分
摘要:Brief Description 给定一颗有根树(根为1),有以下 两种操作:1. 标记操作:对某个结点打上标记(在最开始,只有结点1有标记,其他结点均无标记,而且对于某个 结点,可以打多次标记。)2. 询问操作:询问某个结点最近的一个打了标记的祖先(这个结点本身也算自己的祖 先)你能帮帮他吗? 阅读全文

posted @ 2017-03-24 17:10 蒟蒻konjac 阅读(225) 评论(0) 推荐(0)

[bzoj3998][TJOI2015]弦论-后缀自动机
摘要:Brief Description 给定一个字符串, 您需要求出他的严格k小子串或非严格k小子串. Algorithm Design 考察使用后缀自动机. 首先原串建SAM, 然后如果考察每个状态代表的子串的出现次数. 可以知道, 在parent树上某个节点的出现次数就是他的所有儿子的出现次数之和. 阅读全文

posted @ 2017-03-24 15:34 蒟蒻konjac 阅读(235) 评论(0) 推荐(0)

[bzoj4567][Scoi2016]背单词-Trie+贪心+模型转化
摘要:Brief Description 给你N个互不相同的字符串,记$S_i$为第i个字符串,现在要求你指定N个串的出现顺序,我们用$V_i$表示第i个字符串是第几个出现的,则V为1到N的一个排列。我们希望你指定的出现顺序可以使总代价最小 一个出现顺序的代价的计算方法如下依次考虑第i个串$S_i$对代价 阅读全文

posted @ 2017-03-23 22:01 蒟蒻konjac 阅读(268) 评论(0) 推荐(0)

线性规划与网络流24题解题报告
摘要:线性规划与网络流24题解题报告 阅读全文

posted @ 2017-03-23 15:47 蒟蒻konjac 阅读(3912) 评论(3) 推荐(8)

[bzoj4569][SCOI2016]萌萌哒-并查集+倍增
摘要:Brief Description 一个长度为n的大数,用S1S2S3...Sn表示,其中Si表示数的第i位,S1是数的最高位,告诉你一些限制条件,每个条 件表示为四个数,l1,r1,l2,r2,即两个长度相同的区间,表示子串Sl1Sl1+1Sl1+2...Sr1与Sl2Sl2+1Sl2+2...S 阅读全文

posted @ 2017-03-22 21:14 蒟蒻konjac 阅读(735) 评论(0) 推荐(1)

[bzoj1002]轮状病毒-矩阵树定理
摘要:Brief Description 求外圈有$n$个点的, 形态如 .png)图所示的无向图的生成树个数. Algorithm Design $$f(n) = (3 f(n 1) f(n 2)+2)$$ Code cpp include int mod = 10; struct data { int 阅读全文

posted @ 2017-03-22 16:27 蒟蒻konjac 阅读(415) 评论(0) 推荐(0)

[bzoj1005][HNOI2008]明明的烦恼-Prufer编码+高精度
摘要:Brief Description 给出标号为1到N的点,以及某些点最终的度数,允许在 任意两点间连线,可产生多少棵度数满足要求的树? Algorithm Design 结论题. 首先可以参考这篇文章了解一下什么是Prufer编码: Cayley公式是说,一个完全图$K_n$有$n^{n 2}$棵生 阅读全文

posted @ 2017-03-22 15:26 蒟蒻konjac 阅读(187) 评论(0) 推荐(0)

[bzoj3995][SDOI2015]道路修建-线段树
摘要:Brief Description 某国有2N个城市,这2N个城市构成了一个2行N列的方格网。现在该国政府有一个旅游发展计划,这个计划需要选定L、R两列(L include include const int maxn = 60110; int l[maxn][2], r[maxn][2], u[m 阅读全文

posted @ 2017-03-22 11:48 蒟蒻konjac 阅读(172) 评论(0) 推荐(0)

[bzoj3993][SDOI2015]星际战争-二分+最大流
摘要:Brief Description 3333年,在银河系的某星球上,X军团和Y军团正在激烈地作战。在战斗的某一阶段,Y军团一共派遣了N个巨型机器人进攻X军团的阵地,其中第i个巨型机器人的装甲值为Ai。当一个巨型机器人的装甲值减少到0或者以下时,这个巨型机器人就被摧毁了。X军团有M个激光武器,其中第i 阅读全文

posted @ 2017-03-21 21:34 蒟蒻konjac 阅读(194) 评论(0) 推荐(1)

[bzoj3994][SDOI2015]约数个数和-数论
摘要:Brief Description 计算$\sum_{i\leqslant n}\sum_{j\leqslant m}\sigma_0(ij)$. Algorithm Design 首先证明一个结论 $$d(ij) = \sum_{i\leqslant n}\sum_{j \leqslant m}[ 阅读全文

posted @ 2017-03-21 16:06 蒟蒻konjac 阅读(230) 评论(0) 推荐(0)

[bzoj3990][SDOI2015]排序-搜索
摘要:Brief Description 小A有一个1 2^N的排列A[1..2^N],他希望将A数组从小到大排序,小A可以执行的操作有N种, 每种操作最多可以执行一次 ,对于所有的i(1 include define ll long long const int maxn = 1 阅读全文

posted @ 2017-03-21 10:26 蒟蒻konjac 阅读(322) 评论(0) 推荐(0)

[bzoj4518][Sdoi2016]征途-斜率优化
摘要:Brief Description Pine开始了从S地到T地的征途。 从S地到T地的路可以划分成n段,相邻两段路的分界点设有休息站。 Pine计划用m天到达T地。除第m天外,每一天晚上Pine都必须在休息站过夜。所以,一段路必须在同一天中走完。 Pine希望每一天走的路长度尽可能相近,所以他希望每 阅读全文

posted @ 2017-03-20 19:53 蒟蒻konjac 阅读(164) 评论(0) 推荐(0)

[bzoj4515][Sdoi2016]游戏-树链剖分+李超线段树
摘要:Brief Description Alice 和 Bob 在玩一个游戏。 游戏在一棵有 n 个点的树上进行。最初,每个点上都只有一个数字,那个数字是 123456789123456789。 有时,Alice 会选择一条从 s 到 t 的路径,在这条路径上的每一个点上都添加一个数字。对于路径上的一个 阅读全文

posted @ 2017-03-20 16:31 蒟蒻konjac 阅读(258) 评论(0) 推荐(0)

[bzoj3004][SDOI2012]吊灯——樹形DP
摘要:Brief Description 給定一棵樹, 判斷是否可以將其分成$\frac{n}{k}$個聯通塊, 其中每個聯通塊的大小均爲k. Algorithm Design 我們有一個結論: k可行iff存在$\frac{n}{k}$個點, 以這些點爲根的子樹大小爲k或k的倍數. 讀者可以自行yy一下 阅读全文

posted @ 2017-03-19 09:36 蒟蒻konjac 阅读(212) 评论(0) 推荐(0)

SDOI 2012 Round 2 Day 1(bzoj3004~bzoj3006)测试总结+简单题解
该文被密码保护。

posted @ 2017-03-18 15:20 蒟蒻konjac 阅读(1) 评论(0) 推荐(0)

省选前模板总结
摘要:DATA STRUCTURE 1.数据结构 1.1字符串哈希 为后缀计算一个哈希值,满足$H(i)=H(i+1)x+s[i]$(其中$0 \leq i = a 且 i b)$$ 所以我们开设两个树状数组。 1.2.3二维树状数组 直接扩展就可以了。非常的直观和显然。 1.3线段树 1.3.1普通线段 阅读全文

posted @ 2017-03-15 21:21 蒟蒻konjac 阅读(1138) 评论(2) 推荐(4)

[bzoj3238][Ahoi2013]差异——后缀自动机
摘要:Brief Description Algorithm Design 下面给出后缀自动机的一个性质: 两个子串的最长公共后缀,位于这两个串对应的状态在parent树上的lca状态上。并且最长公共后缀的长度就是lca状态的len。 证明:对于一个串,他的所有祖先节点都是他的后缀,并且深度越大,长度越长 阅读全文

posted @ 2017-03-15 20:45 蒟蒻konjac 阅读(171) 评论(0) 推荐(0)

BZOJ 100题纪念
摘要:![](http://images2015.cnblogs.com/blog/890886/201703/890886-20170315201616307-1915816609.png) 阅读全文

posted @ 2017-03-15 20:16 蒟蒻konjac 阅读(149) 评论(0) 推荐(0)

[bzoj3676][Apio2014]回文串——Manacher+后缀自动机+倍增
摘要:Brief Description 一个回文串的value定义为这个回文串的长度乘以出现次数。给定一个字符串,求$value_{max}$。 Algorithm Design 我们使用Manacher暴力算出所有的回文子串,放在SAM里倍增,大力算贡献就好了。 Code cpp include in 阅读全文

posted @ 2017-03-15 15:24 蒟蒻konjac 阅读(187) 评论(0) 推荐(0)

[bzoj3277==bzoj3473]出现k次子串计数——广义后缀自动机+STL
摘要:Brief Description 给定n个字符串,对于每个字符串,您需要求出在所有字符串中出现次数大于等于k次的子串个数。 Algorithm Design 先建立一个广义后缀自动机,什么是广义后缀自动机?就是所有主串一起建立的一个后缀自动机。 广义后缀自动机的建立很简单,对于每个串,该怎么增量建 阅读全文

posted @ 2017-03-15 09:30 蒟蒻konjac 阅读(1659) 评论(0) 推荐(4)

后缀自动机学习笔记
摘要:昨天看了一下午后缀自动机,终于有了一点心得,特地来做一下笔记。 Definitions 首先不加证明地给出几个定义和引理: DFA(有限状态自动机) 有限状态自动机的功能是识别字符串,令一个自动机A,若它能识别字符串S,就记为A(S)=True,否则A(S)=False。 自动机由五个部分组成,al 阅读全文

posted @ 2017-03-15 06:30 蒟蒻konjac 阅读(432) 评论(0) 推荐(0)

[bzoj4516][Sdoi2016]生成魔咒——后缀自动机
摘要:Brief Description 魔咒串由许多魔咒字符组成,魔咒字符可以用数字表示。例如可以将魔咒字符 1、2 拼凑起来形成一个魔咒串 [1,2]。 一个魔咒串 S 的非空字串被称为魔咒串 S 的生成魔咒。 例如 S=[1,2,1] 时,它的生成魔咒有 [1]、[2]、[1,2]、[2,1]、[1 阅读全文

posted @ 2017-03-14 21:45 蒟蒻konjac 阅读(163) 评论(0) 推荐(0)

[bzoj1692][Usaco2007 Dec]队列变换——贪心+后缀数组
摘要:Brief Description 给定一个数列,您每次可以把数列的最前面的数或最后面的数移动到新数列的开头,使得新数列字典序最小。输出这个新序列。 Algorithm Design 首先我们可以使用贪心得到一个$O(n^2)$的算法。 然后我们可以使用后缀数组把这个题目做成$\Theta(nlog 阅读全文

posted @ 2017-03-14 08:38 蒟蒻konjac 阅读(189) 评论(0) 推荐(0)

[bzoj2251][2010Beijing Wc]外星联络——后缀数组+暴力求解
摘要:Brief Description 找到 01 串中所有重复出现次数大于 1 的子串。并按字典序输出他们的出现次数。 Algorithm Design 求出后缀数组之后,枚举每一个后缀,对于每个后缀从height[i]+1枚举(因为height[i]之前已经计算过了),然后对于这样的每个前缀看一看上 阅读全文

posted @ 2017-03-14 06:41 蒟蒻konjac 阅读(159) 评论(0) 推荐(0)

[bzoj1717][Usaco2006 Dec]Milk Patterns 产奶的模式——后缀数组
摘要:Brief Description 给定一个字符串,求至少出现k次的最长重复子串。 Algorithm Design 先二分答案,然后将后缀分成若干组。判断有没有一个组的后缀个数不小于k。如果有,那么存在k个相同的子串满足条件,否则不存在。这个做法的时间复杂度为$\Theta(nlgn)$. Cod 阅读全文

posted @ 2017-03-13 20:42 蒟蒻konjac 阅读(218) 评论(0) 推荐(0)

[bzoj1031][JSOI2007]字符加密Cipher——后缀数组
摘要:Brief Description 给定一个长度为n的字符串,你需要对其进行加密。 1. 把字符串围成一个环 2. 显然从任意一个位置开始都可以有一个长度为n的串 3. 把产生的n个串按字典序排序,把这n个串的最后一个字符顺接起来就得到了加密后的串。 Algorithm Design 看到环的题目, 阅读全文

posted @ 2017-03-13 14:50 蒟蒻konjac 阅读(184) 评论(0) 推荐(0)

[bzoj1030][JSOI2007]文本生成器——AC自动机
摘要:Brief Description 给定一些模式串,您需要求出满足以下要求的字符串的个数。 1. 长度为m 2. 包含任意一个模式串 Algorithm Design 以下内容来自 "神犇博客" 首先运用补集转换,转而求不含这些串的个数,最后用26^M减掉就行 根据输入的字符串建立AC自动机 dp[ 阅读全文

posted @ 2017-03-13 11:45 蒟蒻konjac 阅读(180) 评论(0) 推荐(0)

[bzoj1009][HNOI2008]GT考试——KMP+矩阵乘法
摘要:Brief Description 给定一个长度为m的禁止字符串,求出长度为n的字符串的个数,满足: 这个字符串的任何一个字串都不等于给定字符串。 本题是POJ3691的弱化版本。 Algorithm Design 考察使用动态规划(递推)。 记录f[i][j]为当前已经做了i个字符,这个字符串长度 阅读全文

posted @ 2017-03-13 09:26 蒟蒻konjac 阅读(161) 评论(0) 推荐(0)

[bzoj2038][2009国家集训队]小Z的袜子(hose)——莫队算法
摘要:Brief Description 给定一个序列,您需要处理m个询问,每个询问形如[l,r],您需要回答在区间[l,r]中任意选取两个数相同的概率。 Algorithm Design 莫队算法入门题目。 "这篇博客讲的不错" 对于L,R的询问。设袜子的个数为$cnt_i$ 那么答案即为$$\frac 阅读全文

posted @ 2017-03-10 21:21 蒟蒻konjac 阅读(195) 评论(0) 推荐(0)

[bzoj3669][Noi2014]魔法森林——lct
摘要:Brief description 给定一个无向图,求从1到n的一条路径使得这条路径上最大的a和b最小。 Algorithm Design 以下内容选自 "某HN神犇的blog" 双瓶颈的最小生成树的感觉,可以首先按a值排序,然后一条边一条边的加入. 如果之前连接的两点还未连通,那么连上先满足最后连 阅读全文

posted @ 2017-03-10 19:32 蒟蒻konjac 阅读(481) 评论(0) 推荐(0)

[bzoj4034][HAOI2015]树上操作——树状数组+dfs序
摘要:Brief Description 您需要设计一种数据结构支持以下操作: 1. 把某个节点 x 的点权增加 a 。 2. 把某个节点 x 为根的子树中所有点的点权都增加 a 。 3. 询问某个节点 x 到根的路径中所有点的点权和。 Algorithm Design 我们考察操作对于查询的贡献。 对于 阅读全文

posted @ 2017-03-10 15:19 蒟蒻konjac 阅读(825) 评论(1) 推荐(2)

[bzoj2594][Wc2006]水管局长数据加强版——lct+离线
摘要:Brief Description 您有一个无向带权图,您需要支持两种操作。 1. 询问两个点之间的最大权最小路径。 2. 删除一条边。 Algorithm Design 我们首先提出一个猜想:最优路径一定在原图的一个最小生成森林上,证明如下: 假设最优路径有$\phi$条边不再最小生成森林上,我们 阅读全文

posted @ 2017-03-10 10:51 蒟蒻konjac 阅读(423) 评论(0) 推荐(0)

[bzoj2631]tree——lct
摘要:Brief Description 一棵n个点的树,每个点的初始权值为1。对于这棵树有q个操作,每个操作为以下四种操作之一: + u v c:将u到v的路径上的点的权值都加上自然数c; u1 v1 u2 v2:将树中原有的边(u1,v1)删除,加入一条新边(u2,v2),保证操作完之后仍然是一棵树; 阅读全文

posted @ 2017-03-10 10:43 蒟蒻konjac 阅读(184) 评论(0) 推荐(0)

[bzoj2002][Hnoi2010]Bounce弹飞绵羊——分块
摘要:Brief description 某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏。游戏一开始,Lostmonkey在地上沿着一条直线摆上n个装置,每个装置设定初始弹力系数ki,当绵羊达到第i个装置时,它会往后弹ki步,达到第i+ki个装置,若 阅读全文

posted @ 2017-03-09 07:55 蒟蒻konjac 阅读(210) 评论(0) 推荐(0)

[bzoj2049][Sdoi2008]Cave 洞穴勘测——lct
摘要:Brief Description 给定一个森林,您需要支持两种操作: 1. 链接两个节点。 2. 断开两个节点之间的链接。 Algorithm Design 对于树上的操作,我们现在已经有了树链剖分可以处理这些问题。然而树链剖分不支持动态维护树上的拓扑结构。所以我们需要Link Cut Tree( 阅读全文

posted @ 2017-03-08 18:08 蒟蒻konjac 阅读(196) 评论(0) 推荐(0)

[bzoj4765]普通计算姬——分块
摘要:Brief Description 给定一棵n个节点的带权树,节点编号为1到n,以root为根,设sum[p]表示以点p为根的这棵子树中所有节点的权 值和。支持下列两种操作: 1 给定两个整数u,v,修改点u的权值为v。 2 给定两个整数l,r,计算sum[l]+sum[l+1]+....+sum[ 阅读全文

posted @ 2017-03-08 11:59 蒟蒻konjac 阅读(786) 评论(2) 推荐(2)

[bzoj4766]文艺计算姬——完全二分图生成树个数
摘要:Brief Description 求$K_{n,m}$ Algorithm Design 首先我们有(Matrix Tree)定理,可以暴力生成几组答案,发现一些规律: $$K_{n,m} = n^{m 1} m^{n 1}$$ 然而直接乘法会爆longlong,所以使用快速乘 Code 阅读全文

posted @ 2017-03-08 07:02 蒟蒻konjac 阅读(1043) 评论(0) 推荐(0)

[bzoj2243][SDOI2011]染色——树链剖分+线段树
摘要:Brief Description 给定一棵树,每个点有颜色,您需要支持两种操作: 1. 把某两个点路径上的所有点的颜色设为某种颜色。 2. 查询两个点路径上的颜色块的个数。 例如,颜色块:22112233视为4个颜色块。 Algorithm Design 树链剖分裸题。 我们需要在线段树上记录区间 阅读全文

posted @ 2017-03-07 17:34 蒟蒻konjac 阅读(200) 评论(0) 推荐(0)

[bzoj3306]树——树上倍增+dfs序+线段树
摘要:Brief Description 您需要写一种数据结构,支持: 1. 更改一个点的点权 2. 求一个子树的最小点权 3. 换根 Algorithm Design 我们先忽略第三个要求。 看到要求子树的最小点权,我们想到使用dfs序。容易看到,一个节点的子树在dfs序中的范围就是$[l(x),r(x 阅读全文

posted @ 2017-03-07 11:55 蒟蒻konjac 阅读(410) 评论(0) 推荐(1)

[bzoj1977][BeiJing2010组队]次小生成树 Tree——树上倍增+lca
摘要:Brief Description 求一个无向图的 严格 次小生成树。 Algorithm Design 考察最小生成树的生成过程。对于一个非树边而言,如果我们使用这一条非树边去替换原MST的路径上的最大边,可以证明仍然满足生成树性质,而且这个生成树的大小一定不小于原生成树,那么枚举所有这样的非树边 阅读全文

posted @ 2017-03-07 10:32 蒟蒻konjac 阅读(410) 评论(1) 推荐(1)

[bzoj3697]采药人的路径——点分治
摘要:Brief Description 采药人的药田是一个树状结构,每条路径上都种植着同种药材。 采药人以自己对药材独到的见解,对每种药材进行了分类。大致分为两类,一种是阴性的,一种是阳性的。 采药人每天都要进行采药活动。他选择的路径是很有讲究的,他认为阴阳平衡是很重要的,所以他走的一定是两种药材数目相 阅读全文

posted @ 2017-03-06 17:34 蒟蒻konjac 阅读(277) 评论(0) 推荐(0)

小蒟蒻的天坑
摘要:做题清单 bzoj 1497: 最大权闭合子图的练习题 bzoj 4562: 喜+1的水题 bzoj 4767: 坐标变换: $$x = x'x_1 + y'x_2$$ $$y = x'y_1 + y'y_2$$ bzoj 2749 bzoj 3230 bzoj 3992 秒掉了30分的矩阵快速幂, 阅读全文

posted @ 2017-03-06 17:11 蒟蒻konjac 阅读(161) 评论(0) 推荐(0)

[bzoj2152]聪聪可可——点分治
摘要:Brief Descirption 给定一棵带权树,您需要统计路径长度为3的倍数的路径长度 Algorithm Analyse 点分治。 考察经过重心的路径。统计出所有deep,统计即可。 Code cpp include include include define ll long long co 阅读全文

posted @ 2017-03-05 16:49 蒟蒻konjac 阅读(287) 评论(1) 推荐(0)

[bzoj2599][IOI2011]Race——点分治
摘要:Brief Description 给定一棵带权树,你需要找到一个点对,他们之间的距离为k,且路径中间的边的个数最少。 Algorithm Analyse 我们考虑点分治。 对于子树,我们递归处理,所以我们只考察经过重心的情况。 我们很容易把所有点的dist和deep预处理出来,所以,问题就转化成了 阅读全文

posted @ 2017-03-05 16:44 蒟蒻konjac 阅读(161) 评论(0) 推荐(1)

[bzoj3343]教主的魔法——分块
摘要:Brief description 给定一个数列,您需要支持一下两种操作: 1. 给[l,r]同加一个数 2. 询问[l,r]中有多少数字大于或等于v Algorithm analyse 这个题一时想不到什么有效的数据结构,但是暴力法非常好想:一个$\Theta(n)$的暴力算法。 我们考虑分块做, 阅读全文

posted @ 2017-03-04 17:27 蒟蒻konjac 阅读(331) 评论(0) 推荐(0)

[bzoj1770][Usaco2009 Nov]lights 燈——Gauss消元法
摘要:题意 给定一个无向图,初始状态所有点均为黑,如果更改一个点,那么它和与它相邻的点全部会被更改。一个点被更改当它的颜色与之前相反。 题解 第一道Gauss消元题。所谓gauss消元,就是使用初等行列式变换把原矩阵转化为上三角矩阵然后回套求解。 给定一个矩阵以后,我们考察每一个变量,找到它的系数最大的一 阅读全文

posted @ 2017-03-04 15:28 蒟蒻konjac 阅读(199) 评论(0) 推荐(0)

[bzoj1095][ZJOI2007]Hide 捉迷藏——线段树+括号序列
摘要:题目大意 给定一棵所有点初始值为黑的无权树,你需要支援两种操作: 1. 把一个点的颜色反转 2. 统计最远黑色点对。 题解 本题是一个树上的结构。对于树上的结构,我们可以采用点分治、树链剖分等方法处理,这个题用了一个巧妙的方法,化树为线性数列,从而解决了问题。 定义一种对一棵树的括号编码。这种编码方 阅读全文

posted @ 2017-03-04 11:42 蒟蒻konjac 阅读(913) 评论(0) 推荐(0)

[bzoj3132]上帝造题的七分钟——二维树状数组
摘要:题目大意 你需要实现一种数据结构,支援以下操作。 1. 给一个矩阵的子矩阵的所有元素同时加一个数。 2. 计算子矩阵和。 题解 一看这个题,我就首先想到用线段树套线段树做。 使用二维线段树的错误解法 其实是第一次写二维线段树orz。为了方便,我们不再使用k乱搞的思想都非常好搞了。 具体地,我们开四个 阅读全文

posted @ 2017-03-03 21:44 蒟蒻konjac 阅读(813) 评论(0) 推荐(0)

[bzoj3524==bzoj2223][Poi2014]Couriers/[Coci 2009]PATULJCI——主席树+权值线段树
摘要:题目大意 给定一个大小为n,每个数的大小均在[1,c]之间的数列,你需要回答m个询问,其中第i个询问形如$(l_i, r_i)$,你需要回答是否存在一个数使得它在区间$[l_i,r_i]$中出现至少$\frac{r l+1}{2}$次。 题解 第一次写主席树。 不难发现,对于一个询问,只有可能要么有 阅读全文

posted @ 2017-03-03 14:22 蒟蒻konjac 阅读(216) 评论(0) 推荐(0)

[bzoj1500][NOI2005]维修数列——splay
摘要:题目 题解 这道题可以说是数列问题的大BOSS,也算是这一周来学习splay等数据结构的一个总结。 我们一个一个地看这些操作。 对于操作1,我们首先建一棵子树,直接接上原树即可。 对于操作2,我们找到区间,不能直接取消连接关系,而是要一个一个的删除以回收空间。我们把已经删除的节点用一个栈保存起来。 阅读全文

posted @ 2017-03-03 11:05 蒟蒻konjac 阅读(211) 评论(0) 推荐(1)

[bzoj1018][SHOI2008]堵塞的交通traffic——线段树
摘要:题目大意 给定一个2×n的矩形网格,你需要设计一种数据结构支持以下操作。 1. 连接两个相邻的网格。 2. 断开两个相邻网格的连接。 3. 查询两个网格的连通性。 最开始,所有网格之间均不连通。 题解 首先看到是图的连通性,我想到了并查集,但是由于题目需要删除操作,只好暂时作罢。 一般化地考虑原题。 阅读全文

posted @ 2017-03-02 11:22 蒟蒻konjac 阅读(192) 评论(0) 推荐(0)

[bzoj3165][Heoi2013]Segment——李超线段树
摘要:题目大意 要求在平面直角坐标系下维护两个操作: 1.在平面上加入一条线段。记第i条被插入的线段的标号为i。 2.给定一个数k,询问与直线 x = k相交的线段中,交点最靠上的线段的编号。 题解 和上一个题几乎一样。 代码 阅读全文

posted @ 2017-03-02 08:14 蒟蒻konjac 阅读(528) 评论(0) 推荐(0)

[bzoj1568][JSOI2008]Blue Mary开公司——李超线段树
摘要:题目大意 题解 这道题需要用到一种叫做李超线段树的东西。我对于李超线段树,是这样理解的: 给节点打下的标记不进行下传,而是仅仅在需要的时候进行下传,这就是所谓永久化标记。 对于这道题,借用一张图, 这张图解释的比较清楚了。 代码 include include include int read() 阅读全文

posted @ 2017-03-02 07:30 蒟蒻konjac 阅读(1136) 评论(1) 推荐(3)

[bzoj3196]Tyvj 1730 二逼平衡树——线段树套平衡树
摘要:题目 Description 您需要写一种数据结构(可参考题目标题),来维护一个有序数列,其中需要提供以下操作: 1.查询k在区间内的排名 2.查询区间内排名为k的值 3.修改某一位值上的数值 4.查询k在区间内的前驱(前驱定义为小于x,且最大的数) 5.查询k在区间内的后继(后继定义为大于x,且最 阅读全文

posted @ 2017-03-01 17:56 蒟蒻konjac 阅读(376) 评论(0) 推荐(0)

[bzoj1251]序列终结者——splay
摘要:题目大意 网上有许多题,就是给定一个序列,要你支持几种操作:A、B、C、D。一看另一道题,又是一个序列 要支持几种操作:D、C、B、A。尤其是我们这里的某人,出模拟试题,居然还出了一道这样的,真是没技术含量……这样 我也出一道题,我出这一道的目的是为了让大家以后做这种题目有一个“库”可以依靠,没有什 阅读全文

posted @ 2017-03-01 15:18 蒟蒻konjac 阅读(205) 评论(0) 推荐(0)

[bzoj1208][HNOI2004]宠物收养所——splay
摘要:题目大意 Description 最近,阿Q开了一间宠物收养所。收养所提供两种服务:收养被主人遗弃的宠物和让新的主人领养这些宠物。每个领养者都希望领养到自己满意的宠物,阿Q根据领养者的要求通过他自己发明的一个特殊的公式,得出该领养者希望领养的宠物的特点值a(a是一个正整数,a include con 阅读全文

posted @ 2017-03-01 09:39 蒟蒻konjac 阅读(209) 评论(0) 推荐(0)