随笔分类 -  字典树

摘要:http://poj.org/problem?id=3764 题意:求上任意两点的边权异或最大值。 解法:dfs遍历树的同时将异或值加入01字典树中,同时查询最大异或值。 这样为什么就能保证你所求的结果对应的路径是连续的呢?考虑三种情况: 1.深搜的两条路径一个包含在另一个中,这样一异或,公共的部分 阅读全文
posted @ 2020-01-22 00:32 无名菜鸟1 阅读(602) 评论(0) 推荐(0)
摘要:https://blog.csdn.net/zuzhiang/article/details/79877109 题意:给xi你 n 个数,让你求两个不相交的区间元素异或后的和的最大值。本题中 n 的上限是 4*10^5. 解法:求出前缀异或和和后缀异或和,dp【i】表示前i个数任意区间的最大异或和。 阅读全文
posted @ 2020-01-21 18:31 无名菜鸟1 阅读(754) 评论(0) 推荐(0)
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=5536 题意:在一个数组中找出 (s[i]+s[j])^s[k] 最大的值,其中 i、j、k 各不相同。 题解:1、可直接暴力O(n3) 2、01字典树可以在数组中找到一个数与X异或和最大和其异或结果。本题中的X是 阅读全文
posted @ 2020-01-21 17:23 无名菜鸟1 阅读(886) 评论(0) 推荐(0)
摘要:E - What Are You Talking About Ignatius is so lucky that he met a Martian yesterday. But he didn't know the language the Martians use. The Martian giv 阅读全文
posted @ 2019-07-19 10:58 无名菜鸟1 阅读(184) 评论(0) 推荐(0)
摘要:C - 统计难题 Ignatius最近遇到一个难题,老师交给他很多单词(只有小写字母组成,不会有重复的单词出现),现在老师要他统计出以某个字符串为前缀的单词数量(单词本身也是自己的前缀). Input输入数据的第一部分是一张单词表,每行一个单词,单词的长度不超过10,它们代表的是老师交给Ignati 阅读全文
posted @ 2019-07-18 21:19 无名菜鸟1 阅读(149) 评论(0) 推荐(0)