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

题解:P13684 【MX-X16-T2】「DLESS-3」XOR and Multiply

题解:P13684 【MX-X16-T2】「DLESS-3」XOR and Multiply

Link

题目思路

异或运算:对于 \(x \oplus y\),若 \(x\)\(y\) 的第 \(i\) 位相同,则返回 \(0\),否则返回 \(1\)

构造 \((x \oplus z)\)\((y \oplus z)\) 的最大乘积。

\(a=x \oplus z\)\(b=y \oplus z\)\(f=x \oplus y\),现在我们尽可能的增大 \(a \cdot b\) 即可。

我们可以从最高位逐位构造。提取每位 \(i\) 的值,将 \(i\)\(f\) 进行按位与运算。若 \(i \mid f=1\),则 \(x\)\(y\) 在这个数位上不同。这里要记录最高位的 \(x\)\(y\) 不同的数位的位置。因为数位越高权值越大,所以这里我们最大化 \(a\) 的贡献,即令 \(a\) 在这个地方位 \(1\)\(b\)\(0\)。对应的,在其他的 \(b\) 的数位上令其为 \(1\) 来增大 \(b\) 的值。

\(i \mid f=0\),显然此时 \(x\)\(y\) 在这个数位上相同。这时令其为 \(1\) 即可最大化贡献。

代码实现

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll T,x,y,h;
ll read() {int s=0,w=1;char ch=getchar();while(ch<'0'||ch>'9'){if(ch=='-') w=-1;ch=getchar();}while(ch>='0'&&ch<='9'){s=s*10+ch-'0';ch=getchar();}return s*w;
}
int main() {T=read();while (T--){x=read(),y=read(),h=read();ll f=x^y;ll a=0,b=0;bool flag=false;for(int i=h-1;i>=0;i--){ll m=1LL<<i;if(f&m){if(!flag) a|=m,flag=true;else b|=m;}else a|=m,b|=m;}cout<<a*b<<"\n";}return 0;
}

时间复杂度 \(O(T \cdot h)\)

http://www.aitangshan.cn/news/98.html

相关文章:

  • 有没有哪个勇士能顶顶百度的网盘,限速的太恶心了
  • 库卡机器人tag焊接保护气体流量控制系统
  • 微算法科技(NASDAQ:MLGO)通过蚁群算法求解资源分配的全局最优解,实现低能耗的区块链资源分配
  • VScode编译报错:正在执行任务: CMake: build build failed. * 终端进程启动失败(退出代码: -1)。 * 终端将被任务重用,按任意键关闭。
  • 电风扇离线语音芯片方案设计与应用场景
  • Vue 中操作data中数组的方法中哪些可以触发视图更新, 哪些不可以,不可以的话有什么解决办法?
  • sublimeText安装配置插件-xml2json
  • Hbuilderx编译正常但无法打开微信开发者工具
  • solidity学习之ERC4626
  • ECharts技巧:如何按数据批次为柱状图设置不同颜色✔️♨️
  • 找到一个数的最低二进制位(lowbit)
  • 数字转人民币大写的函数
  • DP 优化专题
  • Git 常用命令总结
  • 解决 计算机有两个python环境导致 Pygal 模块导入错误
  • 详解:GPT-5 API如何在国内无限制使用?OpenAI最新发布的这款模型到底有何过人之处?
  • Linux Makefile
  • 【高等数学】第八章 向量代数与空间解析几何——第三节 平面及其方程 - 指南
  • 字符串的最大公因子
  • YACS2025年6月乙组
  • chrony时间同步服务详解
  • SAP工厂erp管理系统软件-适合生产型企业的erp系统推荐
  • 我去,Gitee官方推荐的开源项目,这程序我是不能干了,这功能真是逆天了
  • ArcGISProject工程文档的使用学习笔记
  • 8.4 ~ 8.10
  • MeshCN 太阳能 Mesh 网络:SX1262 芯片赋能,无网无电也能畅联
  • 中电金信 :从通用狂飙到穿透场景,行业智能化落地没有捷径
  • wls ssh 连接异常 Missing privilege separation directory: /run/sshd
  • Prometheus源码专题【左扬精讲】—— 监控系统 Prometheus 3.4.0 源码解析:scrape manager 与 scrapeLoop
  • 洛谷P13030 [GCJ 2021 #1B] Subtransmutation