
01Trie
zxyoi_dreamer
退役了退役了爬了爬了,搞个锤子算法竞赛,不如好好享受大学生活。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【LOJ6198】谢特(后缀自动机)(01Trie)(dsu on tree)
传送门题解:写完去看了一下正解,是后缀数组上按照height从大到小对01Trie启发式合并。然而建出后缀树直接把01Trie拿来dsu on tree岂不妙哉?没什么好说的,挺普通的一道题。代码:#include<bits/stdc++.h>#define ll long long#define re register#define gc get_char#d...原创 2019-07-27 14:27:24 · 270 阅读 · 0 评论 -
【十二省联考2019】【LOJ3048】【洛谷P5283】【BZOJ5495】异或粽子(01Trie)(堆)
LOJ传送门洛谷传送门BZOJ传送门解析:这个。。。其实怎么开心怎么玩就好了。可以只建一个01Trie,然后查询前k∗2k*2k∗2的值就行了。也可以只建一个,然后每个在自己的01Trie里面查询就行了。还是挺休闲的。代码:#include<bits/stdc++.h>#define ll long long#define re register#defin...原创 2019-04-10 15:43:21 · 268 阅读 · 0 评论 -
2019.01.25【LOJ6144】2017 山东三轮集训 Day6」C(可持久化01Trie)
传送门解析:实际上这道题的做法非常直白。。。以及暴力。。。思路:考虑如果没有andandand和ororor两个操作,只有xorxorxor的话,显然我们只需要维护一个xortagxortagxortag就可以轻松解决这个问题。那么现在有了andandand和ororor,这个问题就显得有点麻烦了。考虑andandand和ororor总是在不断地将不同的位变得相同。。。所以我们只需...原创 2019-01-25 19:28:48 · 484 阅读 · 1 评论 -
2018.01.03【CodeForces888G】Xor-MST(最小xor生成树)(01TRIE)
传送门解析:随手一写就CF速度rk1了啊。。。思路:好像是说有一个叫什么Borůvka算法的东西。没学过,不过好像我yy的这种解法就是优化过的Borůvka。。。朴素的Borůvka简要说明:1.用数组记录每个子树的最近邻居。(类似Prim)2.对于每一条边进行处理(类似Kruskal)如果这条边连成的两个顶点同属于一个集合,则不处理,否则检测这条边连接的两个子树,如果是连接这...原创 2019-01-03 09:10:49 · 303 阅读 · 0 评论 -
2018.10.15【NOIP练习】hyc的xor/mex(01TRIE)
传送门解析:卡了我好久。。。明明是一个裸的01TRIE01TRIE01TRIE。。。思路:显然由于修改只有xorxorxor操作,所以我们可以方便的把所有数插入一个01TRIE01TRIE01TRIE,并且维护一个全局xortagxortagxortag,这样就可以随时知道任何数当前值。对于询问mexmexmex,我们直接在TRIETRIETRIE树上带着xortagxortagxor...原创 2018-10-16 18:54:09 · 203 阅读 · 0 评论 -
2018.09.30【LOJ517】「LibreOJ β Round #2」计算几何瞎暴力(01Trie)(二进制拆分)
传送门解析:看到标题的dalaodalaodalao先不要急着锤我。。。这道题的二进制拆分和01Trie01Trie01Trie不能混在一起,不要急着说01Trie01Trie01Trie就是二进制拆分。。。思路:这道题可以说是非常好的一道数据结构。我相信应该没有人会去想计算几何。(那这出题人得有多善良)先看操作1,要求在末尾插入一个数,这个与数据结构没有什么关系,我们可以直接在数...原创 2018-09-30 11:52:29 · 354 阅读 · 0 评论 -
2018.09.26【BZOJ4260】Codechef REBXOR(01Trie)
传送门解析:这种要求分成两段的问题,一般就是处理出一个前缀最大和一个后缀最大。然后O(n)O(n)O(n)扫一遍就好了。那么,怎么求?这种异或问题当然还是要01Trie01Trie01Trie了。思路:我们可以顺序做一遍,再倒序相同的求一遍。我们先在Trie树中插入一个0,因为之后的询问可能包含全部的前缀异或。我们利用sumsumsum记录一下前缀xorxorxor,然后每次插...原创 2018-09-26 19:28:15 · 229 阅读 · 0 评论 -
2018.09.25【BZOJ5338】【TJOI2018】Xor(DFS序)(LCA)(可持久化01TRIE)
传送门解析:解决异或问题的最好方式就是01Trie01Trie01Trie上贪心。。。这道题显然又是一个经典问题。思路:既然是询问xorxorxor多半要用01Trie01Trie01Trie,另外的可能是线性基。既然询问单点异或,那么就可以不用考虑线性基了。显然这是一个可持久化01Trie01Trie01Trie上贪心的问题。那么对于询问1,我们以DFSDFSDFS序建立一棵T...原创 2018-09-25 15:36:19 · 256 阅读 · 0 评论 -
2018.09.25【洛谷P4551】最长异或路径(树上差分)(01TRIE)
传送门解析:听说POJ的题数据有问题。。。也确实是有问题。。。我看ACACAC了的代码全部都有判环?于是果断弃掉POJ的题。思路:树上差分。因为xorxorxor运算具有自反性。我们可以将f(u,v)f(u,v)f(u,v)转化为f(root,u) xor f(root,v)f(root,u)\text{ }xor\text{ }f(root,v)f(root...原创 2018-09-25 13:56:51 · 256 阅读 · 0 评论 -
2018.09.25【BZOJ3261】最大异或和(可持久化01Trie)
传送门解析:数据结构题都是这样,暴力很好写,正解绝对。。。也很好写。然而这道题某谷上的评测机卡指针时间(所以某谷上面也找不到指针题解)。。。下面放了三份代码,各份的特点都标上了。思路一个显而易见的暴力是从最后一个一路异或回去。在异或区间到达[l,r][l,r][l,r]时更新答案。我们现在把问题转换一下。发现每次增加数都是在末尾处增加。那我们处理一下前缀和?将a1 ...原创 2018-09-25 09:59:56 · 201 阅读 · 0 评论 -
【SPOJ COT3】Combat on a tree(SG函数)(01Trie合并)
传送门题解:很显然这是一个ICG。由于删掉某个点到根的链之后可能会形成很多连通块,也就是独立局面,感觉用局面的NP性并不是很好做,考虑SG函数。如果一个局面是终止局面,SG值为0。否则,计算一个局面的SG值有两种方式:一个游戏局面的SG值是该局面所有直接后继的SG值的mex如果该游戏局面由若干个互不干涉的子局面构成,该局面的SG值是所有子局面SG值的异或和。考虑怎么统计答案,我...原创 2019-09-14 11:05:36 · 348 阅读 · 0 评论