permu 莫队 总结】的更多相关文章

题目传送门 需要高级权限的传送门 题目大意 给定一个全排列,询问一个区间内的值域连续的一段的长度的最大值. 考虑使用莫队算法. 每次插入一个数$x$,对值域的影响可以分成4种情况: $x - 1$, $x + 1$都不存在. 只有$x - 1$存在,等价于在一段后面添加一个数 只有$x + 1$存在,等价于在一段前面添加一个数 $x - 1$和$x + 1$都存在,等价于把两段拼起来 所以只有端点处的信息有用.我们考虑维护端点处的信息. 为了方便区分存在和不存在,我们维护开区间. 每个端点的$p…
第一步先莫队分块. 对于每一块l~r,初始右端点设为r+1,然后每个询问先将右端点往右移,然后处理询问在l~r之间的部分,最后用一个栈再把l~r的复原. 具体来说是维护两个数组now1和now2,一个向右最长的长度,一个向左的长度,每插入一个值x,用x+1的now2更新x的now2,用x-1的now1更新x的now1,now1[x]+now2[x]-1可能为最终答案,再把x所在的最长区间的左右端点的now数组更新,中间的值不需要更新,因为不可能再往中间插入数了. 有生以来第一次bzoj榜一. #…
[题意]给定长度为n的排列,m次询问区间[L,R]的最长连续值域.n<=50000. [算法]莫队算法 [题解]考虑莫队维护增加一个数的信息:设up[x]表示数值x往上延伸的最大长度,down[x]表示数值x往下延伸的最大长度. 增加一个数x时,up[x]=up[x+1]+1,down[x]=down[x-1]+1.令t=up[x]+down[x]+1,可以用于更新答案. 同时,增加x后会影响到x所在连续区间最大数和最小数,中间的数字不会影响后面的答案(因为只考虑加数,中间的数字虽然改变但不会被…
由于每次询问静态区间里完整值域段的最大大小 貌似很好用莫队转移,所以考虑怎么转移 当给它扩展一个数时,就是给值域添加了一个值 这个值可能已经存在,也可能是新的 有的神仙做法是维护了一个并查集,然而我这码力.. 所以我用了一个更加初级的操作,给每个点打上向左连续最远和向右连续最远的标记 添加一个新点时,同时更新它的向左连续最远和向右连续最远的值的标记 这是添加,删除呢 目前来看,如果不记录每个点的影响及其所有后续影响及其影响前的状态,删除操作就算萎了 所以要尽量不删除 可以知道莫队有个性质,在同一…
[BZOJ4358]Permu(回滚莫队) 题面 给出一个长度为n的排列P(P1,P2,...Pn),以及m个询问.每次询问某个区间[l,r]中,最长的值域连续段长度. 分析 最简单的方法显然是用线段树维护最长值域连续段长度,复杂度\(O(n\sqrt n \log n)\),会TLE 我们以值为下标维护两个数组lb[v],rb[v]表示<v(定义为"左侧")和>v(定义为"右侧)的连续段长度,当我们加入一个值v的时候,会产生一个长度为lb[v]+rb[v]+1的…
题意 题目链接 Sol 感觉自己已经老的爬不动了.. 想了一会儿,大概用个不删除莫队+带撤销并查集就能搞了吧,\(n \sqrt{n} logn\)应该卡的过去 不过不删除莫队咋写来着?....跑去学.. 带撤销并查集咋写来着?....跑去学... 发现自己的带撤销并查集是错的,,自己yy着调了1h终于过了大数据.. #include<bits/stdc++.h> #define Pair pair<int, int> #define MP(x, y) make_pair(x, y…
这道题是几天前水过去的,现在快没印象了,水一发. 首先我们看到它让求解的是最长的值域 连续段长度,很好. 然后就想到了山海经,但但是我还没有做. 然后又想到了很久以前的一次考试的T3旅馆hotel(我是用暴力直接过的QAQ),正解也是线段树. 但是我还是想不到用线段树,因为我单纯的认为当前在学莫队就只会用到莫队. 后来还是问了同学. 然后就很简单了. 我们考虑询问区间的这类操作. 一种做法是各种神仙树套树解决区间问题. 另一种骗分做法就是莫队了. 不会莫队..出门左拐(逃 那么这道题思路就可以出…
题目描述 然而贪玩的$dirty$又开始了他的第三个游戏. $dirty$抓来了$n$只蚂蚁,并且赋予每只蚂蚁不同的编号,编号从$1$到$n$.最开始,它们按某个顺序排成一列.现在$dirty$想要进行$m$场比赛,每场比赛给出$l$和$r$,表示选出从左向右数第$l$只至第$r$只蚂蚁.被选出的蚂蚁需要快速地按编号从小到大排序,之后这些蚂蚁中编号连续的蚂蚁将围成一个圈.每场比赛结束后,蚂蚁们还需要快速地回到最开始的位置. 按照蚂蚁的审美标准,围成的圈越大美观值就越大.于是$dirty$每次需要…
3289: Mato的文件管理 Time Limit: 40 Sec  Memory Limit: 128 MBSubmit: 2399  Solved: 988[Submit][Status][Discuss] Description Mato同学从各路神犇以各种方式(你们懂的)收集了许多资料,这些资料一共有n份,每份有一个大小和一个编号.为了防止他人偷拷,这些资料都是加密过的,只能用Mato自己写的程序才能访问.Mato每天随机选一个区间[l,r],他今天就看编号在此区间内的这些资料.Mat…
Sona Time Limit:5000MS     Memory Limit:65535KB     64bit IO Format: Submit Status Practice NBUT 1457 Appoint description:  Description Sona, Maven of the Strings. Of cause, she can play the zither. Sona can't speak but she can make fancy music. Her…