上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 28 下一页
摘要: 求区间mex。莫队可做。 但如果强制在线,就可以用主席树做。 建立权值线段树,找每个数最后一次出现的位置。查询的时候找第r棵线段树最近出现位置在l之前的最小数即可。update的时候可以update这个数和这个数+1,如果没有这个数+1,那ans就是这个数+1.(好乱啊,看代码吧 cpp // lu 阅读全文
posted @ 2018-08-26 16:52 SWHsz 阅读(90) 评论(0) 推荐(0) 编辑
摘要: LCT模板。 Orz了一下大佬的板子 "Orz" UPD(10.19):好像理解LCT了。。。 LCT相当与把一个树剖分,分成实边和虚边,对于每一个实链用一个splay维护一下它的深度,然后当你想进行操作的时候就用splay灵活的变更它的深度与父子关系。 其中实边接的两个点父子相认,就是父节点承认有 阅读全文
posted @ 2018-08-21 21:01 SWHsz 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 这道题是主席树维护树上K大值。需要可持久化线段树启发式合并。 没有link的话就和count on a tree 一样,有link的话就暴力重构size较小的树,时间复杂度.... 真的是头铁。。。 ~~树剖求lca维护起来好麻烦啊。。。~~可能是我的锅 UPD:就是我的锅....启发式合并一直写的 阅读全文
posted @ 2018-08-21 09:51 SWHsz 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 某次模拟赛,考到了背包问题,但是因为复杂度分析后发现极限数据用普通背包方法过不去,但是实际上数据水了,这种方法就过了,我又没敢写。。。我也很绝望啊。。。 如果当时会写单调队列优化多重背包就没这么多事了。。。 链接:https://www.cnblogs.com/JoeFan/p/4165956.ht 阅读全文
posted @ 2018-08-20 11:06 SWHsz 阅读(289) 评论(0) 推荐(0) 编辑
摘要: 线段树合并。 正解好像不是线段树合并,但是出于练手的目的写了线段树合并。 大概就是对于左右子树,如果有一个为空,返回非空的,如果都不为空,就把这两个整合到一起就行了。 cpp include include include include using namespace std; const int 阅读全文
posted @ 2018-08-20 10:01 SWHsz 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 带修主席树。 脑补一下,每个数对逆序对数的贡献就是前面的比它大的加上后面的比它小的,这样就可以套带修主席树的板子,找一下在它前面删去的比它大的,找一下在它后面比它小的数的个数就行了。 UPD:BZOJ上T了,发现t[]开的太大了,memset的时候直接挂。。。认真算空间Orz cpp include 阅读全文
posted @ 2018-08-19 21:03 SWHsz 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 动态区间第K大,树状数组套主席树。 树套树和整体二分当然也能做啊。 之前我们写主席树是前缀和,但是可以快速修改和区间求和的就容易想到树状数组,于是就树状数组,每个bit存一个主席树的根就行了。 UPD:人弱常数大,开O2+快读才过了luogu上新加的10个点... cpp include inclu 阅读全文
posted @ 2018-08-19 09:51 SWHsz 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 给一棵树,每条边有权。求一条简单路径,权值和等于 K ,且边的数量最小。 淀粉质的题,直接套淀粉质的板子,再维护一个桶,表示到达dis的最小需要的路径。 但是有个奇怪的东西,就是如果我最后还原的时候用栈储存所有的dis就会WA4个点,但是如果我把dfs重做一遍就没事了。。。WA了1页。。。 cpp 阅读全文
posted @ 2018-08-18 21:07 SWHsz 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 题意:求一个数列出现次数 1/2的数。空间:1M。 显然不能存数字,但是因为这个众数的定义和平常的不一样,所以就非常可做了。 用别的数顶掉之前的数,YY一下发现最后留下的就是出现次数 1/2的了。 阅读全文
posted @ 2018-08-18 11:10 SWHsz 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 数据极水,不加优化的多重背包都能过。。。早知道考试的时候不加奇奇怪怪的卡常优化,卡了45分。。。 就是从前往后做一个多重背包,从后往前再做一个,问的时候就暴力求一下跳过这个的最佳方案。。。 cpp include include include using namespace std; int f[ 阅读全文
posted @ 2018-08-18 10:05 SWHsz 阅读(172) 评论(0) 推荐(0) 编辑
上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 28 下一页