hdu 4825 Xor Sum (字典树)

TLS回调函数–一文看懂(详) TLS回调函数 CTF RE 阅读详情

Xor Sum

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 132768/132768 K (Java/Others)
Total Submission(s): 3561    Accepted Submission(s): 1551


Problem Description
Zeus 和 Prometheus 做了一个游戏,Prometheus 给 Zeus 一个集合,集合中包含了N个正整数,随后 Prometheus 将向 Zeus 发起M次询问,每次询问中包含一个正整数 S ,之后 Zeus 需要在集合当中找出一个正整数 K ,使得 K 与 S 的异或结果最大。Prometheus 为了让 Zeus 看到人类的伟大,随即同意 Zeus 可以向人类求助。你能证明人类的智慧么?
 

Input
输入包含若干组测试数据,每组测试数据包含若干行。
输入的第一行是一个整数T(T < 10),表示共有T组数据。
每组数据的第一行输入两个正整数N,M(<1=N,M<=100000),接下来一行,包含N个正整数,代表 Zeus 的获得的集合,之后M行,每行一个正整数S,代表 Prometheus 询问的正整数。所有正整数均不超过2^32。
 

Output
对于每组数据,首先需要输出单独一行”Case #?:”,其中问号处应填入当前的数据组数,组数从1开始计算。
对于每个询问,输出一个正整数K,使得K与S异或值最大。
 

Sample Input
  
2 3 2 3 4 5 1 5 4 1 4 6 5 6 3
 

Sample Output
  
Case #1: 4 3 Case #2: 4
 

Source

题意:中文题。

思路:

用字典树按高位到低位来存每个数的二进制。往下搜索的时候找与对应二进制位上与x不同的来走,保证得到的异或值最大。

代码:

#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
typedef long long ll;
const int maxn=1e5+5;
int cnt,root;
struct node
{
    int next[2];
}q[40*maxn];
void in(int root,ll n)
{
    for(int i=30;i>=0;i--)
    {
        ll x=(n>>i)&1;
        if(q[root].next[x]==0)
        {
            q[root].next[x]=++cnt;
        }
        root=q[root].next[x];
    }
}
ll query(int root,ll n)
{
    ll ans=0;
    for(int i=30;i>=0;i--)
    {
        ans<<=1;
        int x=(n>>i)&1;
        if(q[root].next[!x]!=0)
        {
            ans=ans|(!x);
            root=q[root].next[!x];
        }
        else
        {
            ans=ans|x;
            root=q[root].next[x];
        }
    }
    return ans;
}
int main()
{
    int t,n,qq,y,cas=1;
    ll x;
    scanf("%d",&t);
    while(t--)
    {
        y=0,cnt=0,root=0;
        memset(q,0,sizeof(q));
        scanf("%d%d",&n,&qq);
        for(int i=1;i<=n;i++)
        {
            scanf("%lld",&x);
            in(root,x);
        }
        printf("Case #%d:\n",cas++);
        for(int i=1;i<=qq;i++)
        {
            scanf("%lld",&x);
            printf("%lld\n",query(root,y^x));
        }
    }
    return 0;
}


Jetson AGX Orin 新手避坑:解决‘找不到nvidia-jetpack包’的完整修复指南 本文详细介绍了Jetson AGX Orin设备在安装JetPack开发套件时遇到的'nvidia-jetpack包缺失'问题的完整解决方案。通过分析问题根源、提供分步修复指南以及系统优化建议,帮助开发者快速解决这一常见问题,充分发挥Jetson AGX Orin的边缘计算性能。 阅读详情

相关推荐

AAAI2024最佳解读|FontDiffuser One-Shot Font Generation via Denoising Diffusion with Multi-Scal

本文提出了一种名为FontDiffuser的基于扩散的单次字体生成方法,旨在通过去噪扩散模型生成模仿参考图像风格的字体,同时保留源图像的内容。尽管现有的字体生成方法在性能上取得了一定的进展,但在处理复杂字符和大风格变化时仍面临挑战。FontDiffuser通过引入多尺度内容聚合(MCA)模块,有效结合不同尺度的全局和局部内容线索,从而增强复杂字符的笔画保留能力。此外,文章还提出了一种风格对比细化(SCR)模块,用于风格表示学习,利用风格提取器从图像中分离风格,并通过精心设计的风格对比损失来监督扩散模型。

haimianxiaobao11的博客 1193

字典树练习

字典树

m0_62866610的博客 217

波分复用技术原理

波分复用原理 把不同波长的光信号复用到同一根光纤中进行传送,这种方式我们把它叫做波分复用( Wavelength Division Multiplexing ) 一根光纤被划分为多个波道,多个波长以一定的间隔隔开,在光纤中独立传输。 波分复用应用演示 如果将WDM系统看作交通系统,光纤可以看作是多个车道的公用道路。 各种类型的业务就像货物一样,被打包装载到车辆中。 车辆按照分配的车道行驶至目的地,完成货物的运输。 想要提高波分复用系统的传输容量,就要增加波道数量或是提升单波传...

m0_63251770的博客 9997

2014 百度之星第三题

Xor Sum Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 132768/132768 K (Java/Others) Total Submission(s): 0    Accepted Submission(s): 0 Problem Description Zeus 和 Prometheus 做了一个

huantwofat 1832

2023 年全国网络安全行业职业技能大赛-电子数据取证分析师-决赛WP_2023网络安全行业赛取证

数据库取证工具里面可以恢复删除掉的数据带红叉的就说删除过的,game库下面announcement_detail表里面update_time字段使用sql语句时间戳最大为1513243355转换时间为2017-12-14 17:22:35。

2401_89791684的博客 2092

ZYNQ PS裸机开发RS485

RS485 是一种通用的通信标准,广泛用于数据采集和控制应用中。它的主要优点之一是它允许将多个 RS485 设备放在同一条总线上,这使得多个节点可以相互连接。RS-485是美国电子工业协会(EIA)在1983年批准了一个新的平衡传输标准(balanced transmission standard),EIA一开始将RS(Recommended Standard)做为标准的前缀,不过后来为了便于识别标准的来源,已将RS改为EIA/TIA。

baidu_34971492的博客 831

百度之星 1003 Xor Sum

Problem Description Zeus 和 Prometheus 做了一个游戏,Prometheus 给 Zeus 一个集合,集合中包含了N个正整数,随后 Prometheus 将向 Zeus 发起M次询问,每次询问中包含一个正整数 S ,之后 Zeus 需要在集合当中找出一个正整数 K ,使得 K 与 S 的异或结果最大。Prometheus 为了让 Zeus 看到人类的伟大,随即同

Gavin的专栏 797

YOLOv13-SWC (ShiftWise Convolution) 完整移植与原理深度解析教程

YOLOv13-SWC模型移植与原理解析 本文详细介绍了YOLOv13-SWC模型的完整移植过程与核心技术原理。YOLOv13-SWC在YOLOv8架构基础上引入ShiftWise Convolution(SWC)模块,通过创新性的位移操作、重参数化大核卷积和LoRA分解技术,显著提升了模型性能。文章包含三个核心部分: 模型移植实现:包括配置文件创建、任务模块修改和核心代码实现,重点介绍了SWC模块的掩码机制和LoRA卷积分解策略。 ShiftWise操作原理:深入解析了将大核卷积分解为小核卷积位移组合的数

FJN110的博客 504

【HDU 4825】Xor Sum

1.题目链接。题意:给定一个数组和N组询问,每组询问输出一下这个数组里和该元素异或的最大值。 2.字典树的应用,把数位当作字符串然后建一棵01字典树,这个数的高度最多是32层,然后对于每个数,找出数位之后,贪心的在树上找和它数位不一样的地方,从高位开始找,这样异或起来数值一定是最大的。 #include<bits/stdc++.h> using namespace std; #d...

YG爱木木 299

基于YOLOv8的智能肿瘤检测系统:从图像到诊断的深度学习应用——含代码和论文

本文提出了一种基于YOLOv8深度学习的智能肿瘤检测系统,用于医学影像(CT/MRI/X光)的自动分析与诊断。针对传统人工阅片效率低、主观性强的问题,系统采用最新的YOLOv8目标检测算法,通过改进的C2F骨干网络、Anchor-Free检测头和解耦头等创新设计,实现高效精准的肿瘤定位。文章详细阐述了模型架构、数据处理流程、训练优化方法及PyQt5用户界面开发,为临床提供可靠的AI辅助诊断工具。实验结果表明,该系统在速度和准确率上达到良好平衡,有望提升肿瘤早期筛查效率。

FJN110的博客 199

实现真正的「人机」对战:引入三方 AI 引擎

引入三方 AI 引擎 前边,我们实现了与云库对战的象棋游戏。这一节中,我们将开始实现真正的「人机」对战 — 人与手机 AI 之间对弈; 实现一套象棋 AI 工程浩大,这个工作我们后续文章会做一番介绍。现代软件工程并不主张每个人都「造轮子」,因此我们要有「站在巨人肩膀上」的小智慧。 本节概要 从 github 寻找开源中象引擎 梳理引擎接入的思路 寻找适合的开源中国象棋引擎 github 上有大...

tosmart的博客 983

【01字典树】HDU 4825 Xor Sum

塞纳河畔,左岸的咖啡

L_X_ 236

AE 与 ISP 参数联动机制解析:自动曝光系统与图像信号处理模块协同设计实践

AE(自动曝光)并不是一个独立的图像控制模块,而是与 ISP(Image Signal Processor)深度耦合运作的系统协同体。其输出的曝光参数直接决定了图像处理链路中 Gamma 曲线选择、黑电平补偿、去噪级别、边缘增强等一系列关键参数的取值。本文基于主流平台(如高通、MTK、海思)的工程实战经验,详细剖析 AE 与 ISP 在曝光驱动、调节优先级、图像还原逻辑等环节的联动机制,并结合拍照与视频等不同场景,给出可落地的联调方法。

努力分享一些人工智能、计算机视觉、影像等相关的知识干货! 1528

[HDU 4825] Xor Sum(字典树)

补题 [HDU 4825] Xor Sum(字典树) Zeus 和 Prometheus 做了一个游戏,Prometheus 给 Zeus 一个集合,集合中包含了N个正整数,随后 Prometheus 将向 Zeus 发起M次询问,每次询问中包含一个正整数 S ,之后 Zeus 需要在集合当中找出一个正整数 K ,使得 K 与 S 的异或结果最大。Prometheus 为了让 Zeus 看到人类的...

qq_43826794的博客 259

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

hdu 4825 Xor Sum(字典树)

题目链接:hdu 4825 Xor Sum 题目大意:中文题。 解题思路:将给定得数按照二进制建成一颗字典树,每一层分别对应的各个位数上的01状态。然后每一次查询,如果对应位置为0,则要往1的方向走,如果是1,则要往0的方向走。但是要注意,走的前提是对应分支是存在的。 #include #include #include using namespace std; //type

不慌不忙、不急不躁 3278

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

HDU 4825 Xor Sum 01字典树应用

HDU 4825 Xor Sum 01字典树:字典树的一种,所存元素只有0,1,是求那种给出一组数,再给一个数,然后找出异或以后最大的数,这种问题的解决方法 题目大意 给出一个包含n个数的集合,随后m次发问,给出一个数s,在所给的数的集合中找一个k,使得s与k的异或的结果是最大的。 输入包含若干组测试数据,每组测试数据包含若干行。 输入的第一行是一个整数T(T < 10),表示共有T组数...

qianzhezhi1127的博客 222

Xor Sum(HDU4825 + 字典树)

题目链接:   http://acm.hdu.edu.cn/showproblem.php?pid=4825 题目: 题意:   先给你n个数,再进行q次查询,每次查询数s与原来给的n个数异或和最大的数。 思路:   建一棵字典树,将n个数转换成二进制存进去,每次查询时,对s的每一位进行匹配(从高位开始匹配,毕竟你低位再大也没有一位高位大效果好,如34 <42)...

di6499的博客 197

HDU 4825 Xor Sum 01字典树

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4825题意:找出集合中与X异或的最大值01字典树模板题代码:#include <cstdio> #include <iostream> #include <queue> #include <cstring> #define sf scanf #define pf printf using namespac

SolarDomo的博客 728

Xor Sum HDU - 4825 字典树

问题: Zeus 和 Prometheus 做了一个游戏,Prometheus 给 Zeus 一个集合,集合中包含了N个正整数,随后 Prometheus 将向 Zeus 发起M次询问,每次询问中包含一个正整数 S ,之后 Zeus 需要在集合当中找出一个正整数 K ,使得 K 与 S 的异或结果最大。Prometheus 为了让 Zeus 看到人类的伟大,随即同意 Zeus 可以向人类求助。你...

HXX904的博客 243

hdu - 4825 Xor Sum 01字典树

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4825 题意:对于每一个测试样例,给你n个数,然后m个询问,每个询问给你一个数x,要求你给出n个数中哪个数与x的异或和最大。 思路:考虑在二进制下对每一位进行贪心,从高位到低位,在最暴力的做法下,设有一个集合内包含了给定的n个数,从x的最高位开始,如果该位为1,则将集合中对应位为0的数删去,如果删完...

CoAAColA的博客 308

HDU4825 - Xor Sum(Trie 字典树)

题目链接 HDU4825

转移到dawxy.com 656

HDU 4825 Xor Sum(01字典树解决异或问题)

- HDU 4825 - Xor Sum Time Limit: 2000/1000 MS (Java/Others) | Memory Limit: 132768/132768 K (Java/Others)

Pandora_heart的博客 353

hdu 4825 Xor Sum

题意:       给你n个数,然后给你m组询问,每组询问给你一个数,输出n个数中与该数亦或的最大的那个数,输出的是被亦或的那个数,不是亦或后的结果。 思路:       我用的是字典树+贪心,首先我们可以把前n个数拆成2进制,然后补全前导0,我是补成了34位,然后把他存在字典树中,对于每个询问,把他变成二进制,然后补全前导0,在字典树上查找,查找的时候用贪心的思想,因为前面的是高位,所

Ezereal的博客 670

HDU 4825 Xor Sum(01字典树)

【题目链接】HDU 4825 【题意】 给一个集合,集合中包含了N个正整数,随后发起M次询问,每次询问中包含一个正整数 S,需要在集合当中找出一个正整数 K ,使得 K 与 S 的异或结果最大。 【样例】 【分析】 要计算抑或值,需要将两个数转化为二进制然后依次比对每一位。要从一组数中选出与S抑或最大的数,就需要从最高位开始比较,每次都选择与S在该位上数字不同的那些数,就这样向下计算

No Rain,No L'Arc~en~Ciel 309

HDU - 4825 Xor Sum 字典树 + 二进制匹配

HDU - 4825 Xor Sum Time Limit: 1000MS   Memory Limit: 132768KB   64bit IO Format: %I64d & %I64u Submit Status Description Zeus 和 Prometheus 做了一个游戏,Prometheus 给 Zeus 一个

qq_18661257的专栏 1151

HDU4825 Xor Sum【01字典树】

Xor Sum http://acm.hdu.edu.cn/showproblem.php?pid=4825 Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 132768/132768 K (Java/Others) Total Submission(s): 6580Accepted Submission(s): 2841...

逐梦者 246

HDU--4825 Xor Sum (字典树)

题目链接:HDU--4825 Xor Sum mmp sb字典树因为数组开的不够大一直wa 不是报的 re!!! 找了一下午bug 草 把每个数转化成二进制存字典树里面 然后尽量取与x这个位置上不相同的 先来一个最原始的代码写的跟屎一样的 #include<iostream> #include<cstring> #include<algori...

dianzanji4884的博客 124
上一篇: NEFU 1248 智力异或(字典树)
下一篇: hdu 2222 Keywords Search (AC自动机)
Timeclimber
博客等级 码龄9年 25粉丝 198原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值