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

异或和查询

题目描述:


给定一个包含 n 个整数的数组,你的任务是处理 q 个查询,每个查询的形式为:计算区间 [a,b] 内所有元素的异或和是多少?

输入:


第一行输入两个整数 n 和 q:分别表示数组元素的数量和查询的数量。
第二行有 n 个整数 x1,x2,...,xn:表示数组的元素。
接下来有 q 行,每行描述一个查询,包含两个整数 a 和 b:表示查询区间 [a,b] 的异或和。

约束条件:
1 ≤ n,q ≤ 2*105
1 ≤ x_i ≤ 109
1 ≤ a ≤ b ≤ n

输出:


输出每个查询的结果。

样例输入:


8 4
3 2 4 5 1 1 5 3
2 4
5 6
1 8
3 3

样例输出:


3
0
6
4

x ^ x = 0

x ^ 0 = x

代码

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=2e5+10;int n,q,x[N]{0};int main()
{ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);cin>>n>>q;for(int i=1;i<=n;++i){cin>>x[i];x[i]=x[i-1]^x[i];}while(q--){int a,b;cin>>a>>b;cout<<(x[b]^x[a-1])<<'\n';}return 0;
}

http://www.dtcms.com/a/327816.html

相关文章:

  • 【报错处理】mount: /boot/efi: unknown filesystem type ‘LVM2_member‘.
  • ARM基础概念 异常处理01 day52
  • 前端项目一键换肤
  • Web 服务详解:HTTP 与 HTTPS 配置
  • SuperMap GIS基础产品FAQ集锦(20250804)
  • Java 中 Set 接口详解:知识点与注意事项
  • LangChain SQLChatMessageHistory:SQL数据库存储聊天历史详解
  • Day05 店铺营业状态设置 Redis
  • MQTTX使用wss的连接报错
  • Java -- List接口方法--遍历--ArrayList的注意事项
  • 贪心----4.划分字母区间
  • 方格网法土方计算不规则堆体
  • [ 前端JavaScript的事件流机制 ] - 捕获、冒泡及委托
  • 少数民族文字OCR识别技术实现及应用场景剖析
  • JMeter并发测试与多进程测试
  • __base__属性
  • ETCD的简介和使用
  • 42.【.NET8 实战--孢子记账--从单体到微服务--转向微服务】--扩展功能--集成网关--网关集成认证(一)
  • 1513-map 的三种声明定义方式 使用方式
  • BN层:深度学习中的“数据稳定器”,如何解决训练难题?
  • 基于C#的二手服装交易网站的设计与实现/基于asp.net的二手交易系统的设计与实现/基于.net的闲置物品交易系统的设计与实现
  • 嵌入式Linux学习 -- 软件编程3
  • UNet改进(32):结合CNN局部建模与Transformer全局感知
  • Docker 101:面向初学者的综合教程
  • 【C#】从 Queue 到 ConcurrentQueue:一次对象池改造的实战心得
  • 激活函数篇(2):SwiGLU | GLU | Swish | ReLU | Sigmoid
  • 如何查看当前Redis的密码、如何修改密码、如何快速启动以及重启Redis (Windows)
  • 鹧鸪云:光伏施工流程管理的智能“导航仪”
  • 云平台监控-云原生环境Prometheus企业级监控实战
  • 【Redis与缓存预热:如何通过预加载减少数据库压力】