这道题目很难想到是字典树,如果不是放在字典树单元的话.简单来说,一个整数,是可以转化成为一个32位的二进制数,而也就可以变成长度为32位的二进制字符串.既然如此的话,根据二进制异或的原理:不同得1,否则得0,假如想让这个数字最大,我们就需要使得这个数的二进制表示中从左往右尽可能的取到1,也就是尽量的 ...
分类:
编程语言 时间:
2020-02-06 16:36:25
阅读次数:
98
又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,查询效率比哈希树高。 模板题: 代码 #includ ...
分类:
其他好文 时间:
2020-02-06 14:57:24
阅读次数:
76
传送门 题意:给出一些数字串,判断是否有一个数字串是另一个串的前缀。 这题真的可以算是Trie树的一道模板题了。 先把Trie树建好,建树的时候记录一个sum表示一个节点有多少个串会包含此节点,然后再记录一个end表示这个节点是不是一个串的结尾。 然后dfs/bfs遍历整个Trie树若一个节点x满足 ...
分类:
其他好文 时间:
2020-01-31 22:32:48
阅读次数:
77
线性基 概述 线性基,是一个线性空间(二元运算为异或)的极大线性无关子集 用于解决一系列集合异或和最值问题 注意与Trie树区别在于可以多个 性质 1.表示任意一个异或和方式唯一 2.所有子集异或和不为0 3.线性基内高位各不相同 4.$tot$个位置可以表示$2^{tot}$种异或和 实现 先做一 ...
分类:
其他好文 时间:
2020-01-30 10:04:09
阅读次数:
80
数据结构 1. 平衡树 2. 可持久化数据结构(主席树) 3. 莫队 4. LCT 5. 分治(点分治 + CDQ) 6. 树套树 DP 1. 后效性处理之高斯消元 2. 决策单调性 3. 树形DP(换根,倍增) 字符串 1. KMP(fail树,DP) 2. AC自动机 3. Trie(可持久化T ...
分类:
其他好文 时间:
2020-01-30 09:22:00
阅读次数:
95
题:http://hihocoder.com/problemset/problem/1014 #include<bits/stdc++.h> using namespace std; #define pb push_back typedef long long ll; const int M=1e6 ...
分类:
其他好文 时间:
2020-01-28 00:09:44
阅读次数:
91
在给定的N个整数A1,A2……ANA1,A2……AN中选出两个进行xor(异或)运算,得到的结果最大是多少? 输入格式 第一行输入一个整数N。 第二行输入N个整数A1A1~ANAN。 输出格式 输出一个整数表示答案。 数据范围 1≤N≤1051≤N≤105,0≤Ai<2310≤Ai<231 输入样例 ...
分类:
其他好文 时间:
2020-01-26 16:08:48
阅读次数:
69
维护一个字符串集合,支持两种操作: “I x”向集合中插入一个字符串x; “Q x”询问一个字符串在集合中出现了多少次。 共有N个操作,输入的字符串总长度不超过 105105,字符串仅包含小写英文字母。 输入格式 第一行包含整数N,表示操作数。 接下来N行,每行包含一个操作指令,指令为”I x”或” ...
分类:
其他好文 时间:
2020-01-26 14:43:05
阅读次数:
78
static final int max=100005; //所有字符总数 static int son[][]=new int[max][26];//son数组存储每个节点的儿子;一维表示父节点下标,二维表示小写字母 son[x][0~25] static int cnt[]=new int[ma ...
分类:
其他好文 时间:
2020-01-26 14:29:52
阅读次数:
55
[TOC] 2020.1.25 "luoguOJ P3796 【模板】AC自动机(加强版)" $WA$ 穿原因:对于 $trie$ 树的数组大小有问题——数组开小 问题:$trie$ 树不应该开 $26^{70}$ 那么大的数组吗?为什么一些题解里面只需要开 $1e6$ (一百万)就够了呢? ...
分类:
其他好文 时间:
2020-01-25 21:57:26
阅读次数:
84