闫学灿acwing_acm题

闫学灿acwing_acm题在给定的 N 个整数 A1,A2……AN 中选出两个进行 xor(异或)运算,得到的结果最大是多少?输入格式第一行输入一个整数 N。第二行输入 N 个整数 A1~AN。输出格式输出一个整数表示答案。数据范围1≤N≤105,0≤Ai<231输入样例:31 2 3输出样例:3#include<bits/stdc++.h>using namespace std;const int N = 31e5 + 10;int trie[N][2],ctx,cnt[N];

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

在给定的 N 个整数 A1,A2……AN 中选出两个进行 xor(异或)运算,得到的结果最大是多少?

输入格式
第一行输入一个整数 N。

第二行输入 N 个整数 A1~AN。

输出格式
输出一个整数表示答案。

数据范围
1≤N≤105,
0≤Ai<231

输入样例:
3
1 2 3
输出样例:
3
#include<bits/stdc++.h>
using namespace std;
const int N = 31e5 + 10;
int trie[N][2],ctx,cnt[N];
void insert(int x){ 
   
    int p = 0;
    for(int i = 30;i >= 0;i --){ 
   
        int a = (x >> i & 1);
        if(!trie[p][a])trie[p][a] = ++ ctx;
        p = trie[p][a];
    }
    cnt[p] ++;
}
int query(int x){ 
   
    int sum = 0;
    int p = 0;
    for(int i = 30;i >= 0;i --){ 
   
        int a = (x >> i & 1);
        if(trie[p][!a]){ 
   
            p = trie[p][!a];
            sum += (1 << i);
        }else { 
   
            p = trie[p][a];
        }
    }
    return sum;
}
int a[N];
int main(){ 
   
    int n;
    cin>>n;
    int x;
    for(int i = 0;i < n;i ++){ 
   
        cin>>a[i];
        insert(a[i]);
    }
    int res = 0;
    for(int i = 0;i < n;i ++){ 
   
        res = max(res,query(a[i]));
    }
    cout<<res<<endl;
    return 0;
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/168601.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 配置AAA认证和授权

    配置AAA认证和授权一、目的1、掌握AAA认证的工作原理。2、掌握使用CiscoSecureACS服务器实现AAA认证授权的方法。二、网络拓扑三、认证部分实验要求配置和测试本地和基于认证服务器的AAA认证。1、在R1上创建本地帐号,配置本地AAA认证登录console和VTY。2、配置和测试本地和基于认证服务器的AAA认证。1、在R1上创建本地帐号(用户名:A…

    2022年5月2日
    111
  • android之service简单介绍

    一 什么是Service二 如何使用Service 三 Service的生命周期  一 什么是Service Service,看名字就知道跟正常理解的“服务”差不多,后台运行,可交互这样的一个东西。它跟Activity的级别差不多,也需要在配置文件里注册,但是他不能自己运行,需要通过某一个Activity或者其他Context对象来调用, Context.startServ

    2022年3月9日
    48
  • linux视频教程哪个最好_最好的Linux教程[通俗易懂]

    linux视频教程哪个最好_最好的Linux教程[通俗易懂]linux视频教程哪个最好Linuxisanamewhichbroadlydenotesafamilyoffreeandopen-sourcesoftwareoperatingsystemdistributionsbuiltaroundtheLinuxkernel.Linux的名称广泛地表示围绕Linux内核构建的一系列免费和开源软件操作系统发行版。…

    2022年6月5日
    39
  • MicroBlaze使用_char* malloc

    MicroBlaze使用_char* malloc转自http://blog.163.com/gcs_gcs/blog/static/17448606620121193113914/在最近的工程中,需要用到PS/2键盘和鼠标作为控制输入,所以在网上找了一些相关的资料,内容很丰富,看来已经有很多人做过了这方面的编程。本篇Blog算是实践总结,为以后的开发积累一些基础知识。MicroBlaze支持重启(reset),中断(interrupt),暂…

    2025年8月18日
    7
  • java抛出异常和捕获异常_java.lang.assertionerror

    java抛出异常和捕获异常_java.lang.assertionerror我有一个代码是围绕Web服务的Java包装程序,在例外情况下,它引发AxisFault异常(如下所示)org.apache.axis2.AxisFault:Policyenforcementfailedtoauthenticatetherequest.atorg.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Ut…

    2025年11月3日
    4
  • 目前主流的nosql数据库有哪些_显示器主流评测

    目前主流的nosql数据库有哪些_显示器主流评测oSQL是伴随着web2.0的迅猛发展而在2009年被提出的一个概念,一般可以通俗的理解为高性能的KeyValue存储结构的数据库,当然也有其他更广泛的类型。它基于CAP和BASE理论,强调最终一致性,具有数据结构灵活、扩展方便、大数据量下读写性能高效等特点,在互联网行业被广泛采用。本系列文章将评测广受关注的几个NoSQL数据库产品。本文关注的是HandlerSocketPlugi…

    2022年8月24日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号