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

公司logo设计用什么软件岳阳seo公司

公司logo设计用什么软件,岳阳seo公司,网站建设高端培训,智能展厅展馆建设考察异或运算以及前缀和 题意大概:给你一个长度为n的a数组,一个长度为n的01字符串,会询问q次 当x的值为1 给出 l r 将 l r 区间中的0 改变为1,1改变为0 。当x的值为2是 若随后的数为0 则输出当前字符串中 是0 的a数组中的数异或 …

 考察异或运算以及前缀和

题意大概:给你一个长度为n的a数组,一个长度为n的01字符串,会询问q次 当x的值为1 给出 l r 将 l r 区间中的0 改变为1,1改变为0 。当x的值为2是 若随后的数为0 则输出当前字符串中 是0 的a数组中的数异或 并输出结果 是1 则输出a数组的下标对应的数异或 多组输入

输入样例 

5

5

1 2 3 4 5

01000

7

2 0

2 1

1 2 4

2 0

2 1

1 1 3

2 1

6

12 12 14 14 5 5

001001

3

2 1

1 2 4

2 1

4

7 7 7 777

1111

3

2 0

1 2 3

2 0

2

1000000000 996179179

11

1

2 1

5

1 42 20 47 7

00011

5

1 3 4

1 1 1

1 3 4

1 2 4

2 0

 

输出样例 

3 2 6 7 7 
11 7 
0 0 
16430827 
47 

思路: 用pre[]数组先求出a[]数组异或的前缀和 用num1求出当前字符串是0 对应a[]数组的异或值 num2求出当前字符产是1 对应a[]数组的异或值,当x=2 是 直接输出num1或num2(看所求是什么就求什么)当x=1时 就求出 l~r之间的数pre[r]^per[l-1]的异或值y 然后 更新num1^=y,num2^=y。(因为相同的数异或为0,0与任何数异或都是不改变原来的数)

例如 

5

1   2   3   4   5

1   3   0    4   1  当前异或的前缀和

0   1   0    0    0

若 l=2 r=4

则 y=pre[1]^pre[4]=a1^a1^a2^a3^a4   a1与a1异或为0 抵消了 故可以这样求出 l~r之间的异或值

此时 S变为  0       0  1  1   0

num1原来为  a1^a3^a4^a5 现在应为 a1^a2^a5

num1=num1^y=a1^a3^a4^a5^a2^a3^a4=a1^a2^a5 相当于抵消了 原来出现过 在出现一遍抵消了 没有出现的没有抵消 就相当与1变成0 0变成1  

#include<iostream>
#include<algorithm>
#include<cstring>
#include<vector>
using namespace std;
typedef long long ll;
const int N=5e5+10;
int a[N];
int pre[N];
vector<int>v;
int main()
{int t;cin>>t;while(t--){v.clear();int n;cin>>n;memset(a,0,sizeof a);memset(pre,0,sizeof pre);int num1=0,num2=0;for(int i=1;i<=n;i++) cin>>a[i];string s1,s;cin>>s1;s=" "+s1;for(int i=1;i<=n;i++){if(i==1) pre[i]=a[i];else pre[i]=pre[i-1]^a[i];if(s[i]=='0') num1^=a[i];else if(s[i]=='1') num2^=a[i];}int q;cin>>q;while(q--){int x;cin>>x;if(x==2){int num;cin>>num;if(num==0) v.push_back(num1);else v.push_back(num2);}else{int l,r;cin>>l>>r;int num=pre[r]^pre[l-1];num1^=num;num2^=num;}}for(int i=0;i<v.size();i++) cout<<v[i]<<" ";cout<<endl;}return 0;
}

 

http://www.shuangfujiaoyu.com/news/2025.html

相关文章:

  • 网站域名查主机长春做网络优化的公司
  • 网站建设手机端管网营销技巧培训ppt
  • php外贸网站互联网公司
  • 上海网站制作计划友情链接对网站的作用
  • 怎样是做网站百度推广工作怎么样
  • 徐州做网站的公司百度开户怎么开
  • 做返利网站如何操作竞价推广课程
  • 珠海政府网站建设公司深圳优化排名公司
  • 做传销网站违法的吗什么样的人适合做营销
  • wordpress怎么调用外部主题网页天津seo推广优化
  • 上海网站维护太原网站开发
  • 旅游网站推广方案seo搜索优化招聘
  • 柳州学校网站建设百度网盘会员
  • 云南省玉溪市江川区住房和城乡建设局网站域名查询 站长查询
  • 常州网站建设技术外包网络推广引流方式
  • 做软件挣钱的网站网络营销师报名官网
  • 网站建设塞西app推广接单
  • 各类大型网站建设泰安网站建设
  • 政务公开和网站建设关键词排名公司
  • 成都古怪科技网站建设公司重庆seo网络优化咨询热线
  • 陕西网站制作公司360搜索引擎推广
  • 赣州做网站多少钱来宾seo
  • 外贸行业网络推广win10最强性能优化设置
  • 个人网站源码下载深圳疫情最新情况
  • 手机版网站制作应用哪些行业适合做seo
  • 如今做哪个网站致富网上推广渠道有哪些
  • 最佳配色网站日本比分算1:1
  • 做设计网站模块的网站榆林seo
  • 北京的广告公司网站建设怎么建网站免费的
  • 找工程项目信息网站谷歌搜索入口 镜像