- #include
- using namespace std;
- const int N=100010,M=3000000;
- int n,idx;
- int son[M][2];
- int a[N];
-
- void insert(int x){
- int p=0;
- for(int i=30;~i;i--){
- int &s=son[p][x>>i&1];
- if(!s) s = ++idx;
- p=s;
- }
- }
-
- int query(int x){
- int res=0,p=0;
- for(int i=30;~i;i--){
- int s=x>>i&1;
- if(son[p][!s]){
- res += 1<
- p=son[p][!s];
- }
- else{
- p=son[p][s];
- }
- }
- return res;
- }
-
- int main(){
- scanf("%d",&n);
- for(int i=0;i
- scanf("%d",&a[i]);
- insert(a[i]);
- }
- int res=0;
- for(int i=0;i
- res=max(res,query(a[i]));
- }
- printf("%d",res);
- }
-
相关阅读:
企业电子招标采购系统源码Spring Boot + Mybatis + Redis + Layui + 前后端分离 构建企业电子招采平台之立项流程图
机器学习实验六:决策树-海洋生物例子
粒子滤波 PF——在机动目标跟踪中的应用(粒子滤波VS扩展卡尔曼滤波)
浅谈网络损伤仪HoloWAN的使用场景
MapReduce 论文
我又学会了使用Range实现网络文件下载的断点续传
机场调度管理系统(客户端+服务器端+Java+MySQL)
hadoop单机版安装
使用 Microsoft Teams Toolkit for Visual Studio 高效构建一个指示板
使用 Cloudflare 电子邮件路由轻松创建和路由电子邮件地址
-
原文地址:https://blog.csdn.net/zyang654321/article/details/133800220