当前位置: 首页 > news >正文

Acwing.143 最大异或对(trie树)

题目

在给定的N个整数A1,A2 . …Ax中选出两个进行xor(异或)运算,得到的结果最大是多少?
输入格式
第一行输入一个整数N。
第二行输入N个整数A1~AN。

输出格式

输出一个整数表示答案。

数据范围

1 ≤N ≤105,0≤A<231

  • 输入样例:
3
1 2 3
  • 输出样例
3

题解

import java.util.Scanner;/*** @author akuya* @create 2023-07-24-0:00*/
public class Mxor {static int N=100010;static int M=31*N;static int n;static int a[]=new int[N];static int son[][]=new int[M][2];static int idx;public static void main(String[] args) {Scanner scanner=new Scanner(System.in);n=scanner.nextInt();int res=0;for(int i=0;i<n;i++){a[i]=scanner.nextInt();}for(int i=0;i<n;i++){insert(a[i]);int t=query(a[i]);res=Math.max(res,a[i]^t);}System.out.println(res);}public static void insert(int x){int p=0;for(int i=30;i>=0;i--){int u=x>>i&1;if(son[p][u]==0) son[p][u]=++idx;p=son[p][u];}}public static int query(int x){int p=0;int res=0;for(int i=30;i>=0;i--){int u=x>>i&1;if(son[p][u^1]!=0){p=son[p][1^u];res=res*2+1^u;}else{p=son[p][u];res=res*2+u;}}return res;}
}

思路

正常遍历时间复杂度为n2,利用trie树存起来,然后分解成二进制遍历。可以压缩时间复杂度到O(n)*O(31)。这样就不会超时了

相关文章:

Acwing.143 最大异或对(trie树)

题目 在给定的N个整数A1&#xff0c;A2 . …Ax中选出两个进行xor(异或)运算&#xff0c;得到的结果最大是多少? 输入格式 第一行输入一个整数N。 第二行输入N个整数A1~AN。 输出格式 输出一个整数表示答案。 数据范围 1 ≤N ≤105,0≤A<231 输入样例: 3 1 2 3输出样…...

day10.8ubentu流水灯

流水灯 .text .global _start _start: 1.设置GPIOE寄存器的时钟使能 RCC_MP_AHB4ENSETR[4]->1 0x50000a28LDR R0,0X50000A28LDR R1,[R0] 从r0为起始地址的4字节数据取出放在R1ORR R1,R1,#(0x1<<4) 第4位设置为1STR R1,[R0] 写回2.设置PE10管脚为输出模式 G…...

transformer系列5---transformer显存占用分析

Transformer显存占用分析 1 影响因素概述2 前向计算临时Tensor显存占用2.1 self-attention显存占用2.2 MLP显存占用 3 梯度和优化器显存占用3.1 模型训练过程两者显存占用3.2 模型推理过程两者显存占用 1 影响因素概述 模型训练框架&#xff1a;例如pytorch框架的cuda context…...

Docker项目部署

目录 一、前端项目部署 1、上传文件 2、开启容器 3、测试 二、后端项目部署 1、打包java项目 2、将jar包和Dockerfile文件长传到Linux系统 3、构建镜像 4、开启容器 5、测试 三、DockerCompose快速部署 基本语法 一、前端项目部署 1、上传文件 里面包括页面和配置文…...

vue3实现文本超出鼠标移入的时候文本滚动

判断文本长度是否大于容器长度 鼠标移入的时候判断&#xff0c;此处使用了tailwindcss&#xff0c;注意一下要设置文本不换行。 <divref"functionsItems"mouseenter"enterFunctionsItem($event, index)"><img class"w-5 h-5" :src&quo…...

光伏系统MPPT、恒功率控制切换Simulink仿真

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…...

mysql双主互从通过KeepAlived虚拟IP实现高可用

mysql双主互从通过KeepAlived虚拟IP实现高可用 在mysql 双主互从的基础上&#xff0c; 架构图&#xff1a; Keepalived有两个主要的功能&#xff1a; 提供虚拟IP&#xff0c;实现双机热备通过LVS&#xff0c;实现负载均衡 安装 # 安装 yum -y install keepalived # 卸载 …...

​苹果应用高版本出现:“无法安装此app,因为无法验证其完整性”是怎么回事?竟然是错误的?

最近经常有同学私聊我问苹果应用签名后用落地页下载出现高版本是什么意思&#xff1f;我一脸懵&#xff01;还有这个操作&#xff1f;高版本是个啥玩意&#xff01;所以我就上了一下科技去搜索引擎搜索了下&#xff0c;哈哈哈&#xff0c;然后了解下来发现是这样的首先我们确定…...

AF_UNIX和127.0.0.1(AF_INET)回环地址写数据速度对比

在linux下&#xff0c;存在着这样的情况&#xff0c;本地的进程间通信&#xff0c;并且其中一个是服务端&#xff0c;另外的都是客户端。 服务端通过绑定端口&#xff0c;客户端往127.0.0.1的对应端口发送&#xff0c;即可办到&#xff0c;不过这样会浪费一个端口&#xff0c;同…...

我在 NPM 发布了新包: con-colors

链接地址&#xff1a;npmjs.com con-colors 安装依赖 yarn add con-colors使用 导入&#xff1a; import { print } from "con-colors";使用&#xff1a; print.succ("成功的消息"); print.err("失败的消息")例子&#xff1a; import { p…...

【python数据建模】Scipy库

常用模块列表 模块名功能scipy.constants数学常量scipy.fft离散傅里叶变换scipy.integrate积分scipy.interpolate插值scipy.interpolate线性代数scipy.cluster聚类分析、向量量化scipy.io数据输入输出scipy.misc图像处理scipy.ndimagen维图像scipy.odr正交距离回归scipy.optim…...

C# App.xaml.cs的一些操作

一、保证只有一个进程 1.1 关闭旧的&#xff0c;打开新的 protected override void OnStartup(StartupEventArgs e) {base.OnStartup(e);var process Process.GetProcessesByName("Dog");if (process.Count() > 1) {var list process.ToList();list.Sort((p1,p2…...

【ORACLE】ORA-00972:标识符过长

问题 执行创建表结构sql&#xff0c;提示 ORA-00972&#xff1a;标识符过长&#xff1b; 如图所示&#xff0c;约束名称超过30个字符了 原因 一、11G and before 在使用11G数据库时&#xff0c;经常会遇到报错ORA-00972&#xff0c;原因是因为对象名称定义太长&#xff0c…...

【Vue】Vue快速入门、Vue常用指令、Vue的生命周期

&#x1f40c;个人主页&#xff1a; &#x1f40c; 叶落闲庭 &#x1f4a8;我的专栏&#xff1a;&#x1f4a8; c语言 数据结构 javaEE 操作系统 Redis 石可破也&#xff0c;而不可夺坚&#xff1b;丹可磨也&#xff0c;而不可夺赤。 Vue 一、 Vue快速入门二、Vue常用指令2.1 v…...

Pandas 数据处理 类别数据和数值数据

要是作深度学习的话&#xff0c;可以直接用tensoflow框架的预处理层&#xff0c;我试过&#xff0c;比PyTorch自己写出来的会好一点&#xff0c;主要是简单好用。处理CSV文件 它类别的处理逻辑是onehot&#xff0c;比较标准稀疏&#xff0c;数值的话就是归一化了。 有时候不需…...

Android攻城狮学鸿蒙 -- 点击事件

具体参考&#xff1a;华为官网学习地址 1、点击事件&#xff0c;界面跳转 对于一个按钮设置点击事件&#xff0c;跳转页面。但是onclick中&#xff0c;如果pages前边加上“/”&#xff0c;就没法跳转。但是开发工具加上“/”才会给出提示。不知道是不是开发工具的bug。&#…...

jmeter性能测试常见的一些问题

一、request 请求超时设置 timeout 超时时间是可以手动设置的&#xff0c;新建一个 http 请求&#xff0c;在“高级”设置中找到“超时”设置&#xff0c;设置连接、响应时间为2000ms。 1. 请求连接超时&#xff0c;连不上服务器。 现象&#xff1a; Jmeter表现形式为&#xff…...

利用国外 vps 为 switch 设置代理服务器加速游戏下载

switch 在国内通过 wifi 连网后如果直接下载游戏的话速度特别慢&#xff0c;据说要挂一个晚上才能下载成功一个游戏。当我尝试下载时发现进度条基本不动&#xff0c;怀疑软件源是在国外的原因&#xff0c;于是想到可以通过国外 vps 代理中转的方式。具体步骤如下&#xff08;以…...

云计算安全的新挑战:零信任架构的应用

文章目录 云计算的安全挑战什么是零信任架构&#xff1f;零信任架构的应用1. 多因素身份验证&#xff08;MFA&#xff09;2. 访问控制和策略3. 安全信息和事件管理&#xff08;SIEM&#xff09;4. 安全的应用程序开发 零信任架构的未来 &#x1f389;欢迎来到云计算技术应用专栏…...

基于SSM的药房药品采购集中管理系统的设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用Vue技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…...

Windows系统硬件指纹伪装:EASY-HWID-SPOOFER实战指南

Windows系统硬件指纹伪装&#xff1a;EASY-HWID-SPOOFER实战指南 【免费下载链接】EASY-HWID-SPOOFER 基于内核模式的硬件信息欺骗工具 项目地址: https://gitcode.com/gh_mirrors/ea/EASY-HWID-SPOOFER 在数字时代&#xff0c;保护个人隐私变得越来越重要。EASY-HWID-S…...

FanControl完全指南:Windows风扇智能控制的终极解决方案

FanControl完全指南&#xff1a;Windows风扇智能控制的终极解决方案 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trending/…...

【紧急预警】NotebookLM在广义相对论语境下的概念漂移现象:基于57篇PRL论文的偏差审计报告

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;【紧急预警】NotebookLM在广义相对论语境下的概念漂移现象&#xff1a;基于57篇PRL论文的偏差审计报告 现象复现与基准测试协议 我们在标准LIGO-PRL语料集&#xff08;v2.3&#xff09;上对NotebookLM…...

51单片机断电记忆功能实现:用AT24C02做个简易电子计数器(含完整代码)

51单片机断电记忆功能实战&#xff1a;基于AT24C02的智能计数器开发指南 在嵌入式系统开发中&#xff0c;数据持久化存储是一个常见但至关重要的需求。想象一下&#xff0c;当你精心设计的计数器设备在断电后丢失所有记录&#xff0c;或者每次重启都需要重新配置参数&#xff0…...

面向AI系统的非功能测试:公平性、可解释性与鲁棒性验证

一、引言&#xff1a;当“功能正确”不再是终点在软件测试的早期时代&#xff0c;我们的职责边界相对清晰——功能符合需求文档、性能达到指标、界面无错别字&#xff0c;测试便可宣告完成。然而&#xff0c;当AI系统从实验室的象牙塔走向社会决策的核心地带&#xff0c;这套传…...

Display-Lock:窗口状态锁定技术原理与C#实战

1. 项目概述与核心价值最近在折腾一个挺有意思的开源项目&#xff0c;叫Stateford/Display-Lock。乍一看这个名字&#xff0c;可能有点摸不着头脑&#xff0c;Stateford听起来像个人名或者组织名&#xff0c;Display-Lock直译是“显示锁定”。但当你深入进去&#xff0c;会发现…...

在Gazebo中为Husky机器人集成Livox Mid-70传感器仿真

1. 环境准备与基础概念 在开始为Husky机器人集成Livox Mid-70传感器之前&#xff0c;我们需要先搭建好基础环境。Gazebo作为一款功能强大的机器人仿真工具&#xff0c;能够模拟真实物理环境中的传感器行为。Livox Mid-70是一款固态激光雷达&#xff0c;相比传统机械式雷达&…...

蓝牙广播帧实战解析:从ADV_IND到AUX_CHAIN_IND的报文拆解

1. 蓝牙广播帧入门&#xff1a;为什么需要这么多类型&#xff1f; 刚接触蓝牙协议栈的开发者&#xff0c;第一次看到ADV_IND、ADV_DIRECT_IND这些缩写时&#xff0c;往往会感到一头雾水。我自己最初调试蓝牙设备时&#xff0c;就曾经对着抓包工具里密密麻麻的广播数据发愣——为…...

丹诺医药开启招股:拟募资6亿港元 5月22日上市 无营收,年亏1.5亿

雷递网 雷建平 5月14日丹诺医药&#xff08;苏州&#xff09;股份有限公司&#xff08;简称&#xff1a;“丹诺医药”&#xff0c;股票代码&#xff1a;“06872”&#xff09;日前开启招股&#xff0c;准备2026年5月22日在港交所上市。丹诺医药发售价75.70港元&#xff0c;发行…...

AMiner:研究生必备 AI 科研工具|文献调研・文献管理・代码复现一站式平台(基于 GLM 大模型)

科研中常遇到文献难找、资料混乱、算法难复现三大难题。AMiner作为一款AI for Science的AI学术科研工具&#xff0c;由清华大学唐杰教授团队研发&#xff0c;介入最新 GLM 大模型&#xff0c;提供文献调研、知识管理、代码辅助一站式服务&#xff0c;覆盖 3.3 亿文献、1.8亿专利…...