随笔分类 - 字典树
摘要:Kuro and GCD and XOR and SUM 题意:给你一个空数组。 然后有2个操作, 1是往这个数组里面插入某个值, 2.给你一个x, k, s。要求在数组中找到一个v,使得k|gcd(x,v) (即gcd(x,v)是k的倍数,v+x <= k, x ^ v的值最大。 题解:XOR亦或
阅读全文
摘要:Vasiliy's Multiset 题意: 给你一个可以有重复元素的集合, '+'表示这个往这个集合里添加某个元素, '-' 表示删除某个集合中的元素(确保有了才会进行删除操作), ’?' 表示询问操作, 问在这个集合中对这个元素进行异或操作的最大异或值是多少, 注意的是 这个集合有一个初始值0。
阅读全文
摘要:Xor Sum 中文题意不解释。 题解:就是开一个01字典树,从最高位开始, 尽可能的去找到当前位取反的值, 然后就可以找到结果。 结果怕每次初始化然后TLE, 手残写了一个垃圾优化, 然后疯狂WA 2333,最后还是初始化了。 代码: 1 #include<bits/stdc++.h> 2 usi
阅读全文
摘要:Perfect Security 题意:给你一个A[i]数组, 再给你一个B[i]数组, 现在用选取 B[i] 数组中的一个 去和 A[i] 数组里的一个元素去进行异或操作, B[i]数组的元素只能用一次,现在求A[i]数组异或后的最小字典序。 题解:将B[I]数组按照2进制分解之后开一个字典树,
阅读全文
摘要:今天刚看的字典树, 就RE了一发, 字典树原理还是很简单的, 唯一的问题就是不知道一维够不够用, 就开的贼大, 这真的是容易MLE的东西啊, 赶紧去学优化吧。 HDU-1251 统计难题 这道题唯一的问题就是会不会字典树, 2333, 给一个字典树的博客传送门, 话说这个博客一搜就搜到了啊. 代码:
阅读全文