AcWing 143. 最大异或对
https://www.acwing.com/problem/content/145
#include <iostream>
#include <algorithm>
using namespace std; const int N = ;
int n;
int a[N]; class TrieNode {
public:
TrieNode() {};
TrieNode* children[];
}; class Trie {
public:
Trie() {
root = new TrieNode;
} void insert(int x) {
TrieNode* cur = root;
for (int i = ; i >= ; i--) {
int c = x >> i & ;
if (!cur->children[c]) {
cur->children[c] = new TrieNode;
}
cur = cur->children[c];
}
} int search(int x) {
TrieNode* cur = root; int res = ;
for (int i = ; i >= ; i--) {
int c = x >> i & ;
if (cur->children[!c]) {
res += << i;
cur = cur->children[!c];
} else if (cur->children[c]) {
cur = cur->children[c];
} else {
break;
}
}
return res;
}
private:
TrieNode* root;
}; int run() {
Trie trie;
int res = ;
for (int i = ; i < n; i++) {
trie.insert(a[i]);
res = max(res, trie.search(a[i]));
} return res;
} int main()
{
cin >> n;
for (int i = ; i < n; i++) {
cin >> a[i];
} cout << run() << endl;
return ;
}
AcWing 143. 最大异或对的更多相关文章
- AcWing 143. 最大异或对 01字典树打卡
在给定的N个整数A1,A2……ANA1,A2……AN中选出两个进行xor(异或)运算,得到的结果最大是多少? 输入格式 第一行输入一个整数N. 第二行输入N个整数A1A1-ANAN. 输出格式 输出一 ...
- AcWing:143. 最大异或对(01字典树 + 位运算 + 异或性质)
在给定的N个整数A1,A2……ANA1,A2……AN中选出两个进行xor(异或)运算,得到的结果最大是多少? 输入格式 第一行输入一个整数N. 第二行输入N个整数A1A1-ANAN. 输出格式 输出一 ...
- 143. 最大异或对(Trie树存整数+二进制)
在给定的N个整数A1,A2……ANA1,A2……AN中选出两个进行xor(异或)运算,得到的结果最大是多少? 输入格式 第一行输入一个整数N. 第二行输入N个整数A1A1-ANAN. 输出格式 输出一 ...
- 《算法竞赛进阶指南》1.6Trie
142. 前缀统计 给定N个字符串S1,S2-SN,接下来进行M次询问,每次询问给定一个字符串T,求S1-SN中有多少个字符串是T的前缀. 输入字符串的总长度不超过106,仅包含小写字母. 输入格式 ...
- AcWing 228. 异或 (dfs+线性基)打卡
题目:https://www.acwing.com/problem/content/230/ 题意:有一个图,每条边有一个权值,现在求1-n的一条路径的最大异或和,一条边能经过多次,相应的也要计算那么 ...
- AcWing:144. 最长异或值路径(dfs + 01字典树)
给定一个树,树上的边都具有权值. 树中一条路径的异或长度被定义为路径上所有边的权值的异或和: ⊕ 为异或符号. 给定上述的具有n个节点的树,你能找到异或长度最大的路径吗? 输入格式 第一行包含整数n, ...
- AcWing 144. 最长异或值路径 01字典树打卡
给定一个树,树上的边都具有权值. 树中一条路径的异或长度被定义为路径上所有边的权值的异或和: ⊕ 为异或符号. 给定上述的具有n个节点的树,你能找到异或长度最大的路径吗? 输入格式 第一行包含整数n, ...
- AcWing:239. 奇偶游戏(前缀和 + 离散化 + 带权并查集 + 异或性质 or 扩展域并查集 + 离散化)
小A和小B在玩一个游戏. 首先,小A写了一个由0和1组成的序列S,长度为N. 然后,小B向小A提出了M个问题. 在每个问题中,小B指定两个数 l 和 r,小A回答 S[l~r] 中有奇数个1还是偶数个 ...
- RMAN异机恢复遭遇ORA-01547、ORA-01152、ORA-01110错误案例
测试环境: 操作系统 : Red Hat Enterprise Linux ES release 4 (Nahant Update 4) VMWARE 数据库 : O ...
随机推荐
- Firemonkey Android 虚拟机
AVD,Android Virtual Device start menu>Android AVD Manager>create>start. [DCC Error] E2597 D ...
- The web application [/zzti] registered the JDBC driver [com.microsoft.sqlserver.jdbc.SQLServerDriver
先说下题目:因为是在我进行处理项目升级时同时遇到了上面的问题,一般都会遇到,所以就一并说了 不罗嗦了,正题: 在本地服务器中提供tomcat6,然后在myeclipse中配置severs tomcat ...
- window 10 javac不是内部或外部命令
今天在新电脑上配置Java环境变量(window 10),不管怎么配置都是提示“javac不是内部或外部命令”,java,java -version命令是正常的. 后来发现是path路径配置的不对,修 ...
- python 画直方图
import numpy as npimport matplotlib.pyplot as plt def sample_data(size,length=100): data=[] for i in ...
- 新手C#int.Parse、int.TryParse的学习2018.08.04
int.Parse()用于将字符串转换为32为int类型,但是在遇到非数字或者类似1.545这种小数的时候会报错,后来采用了int.TryParse,这个在转换后会判断是否可以正常转换,若不能,会返回 ...
- Attribute与元数据
在MSDN中,Attribute被定义为“是被指定给某一声明的一则附加的声明性信息”. 我们可以通过Attribute来定义设计层面的信息以及运行时(run-time)信息,也可以利用Attribut ...
- ios实现分发下载
背景:原来公司Jenkins打包后的ipa和apk都是通过第三方的平台托管,手动上传,然后去扫二维码下载.虽然第三方平台有Jenkins插件来直接上传到该平台,但是想自己进行管理.所以就自己来做安装包 ...
- 不可理喻的JSTL标签库
JSTL 全名为Java Server Pages Standard Tag Library(JSP Standard Tag Library),它的中文名称为JSP 标准标签函数库. Web 程序开 ...
- Notebook computer(Ubuntu)
==============Mask_RCNN============== source activate flappbird cd /home/luo/Desktop/MyFile/MaskRCNN ...
- 创建Kafka0.8.2生产者与消费者
一.下载安装Kafka0.8.2 二.vi config/server.properties 三.修改为advertised.host.name=192.168.1.76 四.rm -rf /tmp ...