首先把那式子转换成长度为偶数并且二进制有一段连续的一,大于这位的数量都是偶数

如果长度为奇数那么如果 and 是1,xor 一定是1;and 是0,xor可能是1;所以长度为奇数一定不可以。

那么长度为偶数的话,对二进制的每位来说,and = 0,xor = 1   ; and = 1/0 ,xor=0;

两个数的大小是由最高不同位确定的,那么假设 二进制第 i位不同,那么上面的要相同则 只有xor = and 0  ,所以有偶数个1   和第 i 位都是 1 ;

二进制有一段连续的一,大于这位的数量都是偶数  - > 大于 这位的前缀 prexor【r】= prexor【l-1】

#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<vector>
#include<map>
using namespace std;typedef long long LL;
typedef pair<int,int> PII;
const int N=1e6+10,mod=1e9+7;void add(int &a,LL b){a=(a+b)%mod;return ;}
int sum[N];
int pos[2][N],pre[N],a[N];
int main()
{int n;scanf("%d",&n);for(int i=1;i<=n;i++)scanf("%d",a+i);int ma=0;for(int i=20;i>=0;i--){for(int j=1;j<=n;j++)pre[j]=pre[j-1]^(a[j]>>(i+1)),pos[j&1][pre[j-1]]=n+1;for(int r=1;r<=n;r++)if(a[r]>>i&1){if(pos[(r-1)&1][pre[r]])ma=max(ma,r-pos[(r-1)&1][pre[r]]+1);pos[r&1][pre[r-1]]=min(pos[r&1][pre[r-1]],r);}else {for(int k=r-1;a[k]>>i&1;k--)pos[k&1][pre[k-1]]=n+1;}}printf("%d\n",ma);return 0;
}
//那个式子转换下就是l-r,长度为偶数,二进制其中一位都是 1 ,并且 大于这位的1的数量是偶数
//假设连续一的位数是二进制的第i位 则 l-r中 i+1,i+2 -> 20  的异或是0;那就是pre[r]=pre[l-1];
//然后维护一段一,如果不是一段1的话就消去这段一的影响 

1592E - Скучающий Бакри相关推荐

最新文章

  1. 中国航信官笔试计算机基础,中国航信笔试题目
  2. 编程软件python t-Python 3.7 64位下载
  3. 大学python和vb哪个简单-vb和python哪个速度快
  4. Spring Boot 自动配置之条件注解
  5. Json与List的相互转换 [谷歌的Gson.jar和阿里的fastJson.jar]
  6. java进阶案例下载_登录案例java实现 ---- Java进阶篇
  7. OpenCV-车牌号检测
  8. php 中文地址伪静态,.htaccess实现含中文的url伪静态跳转
  9. GIS(地理信息系统)名词解释大全(考研)
  10. JavaWeb课程设计学生宿舍管理系统
  11. notepad拼心形_用shell脚本写个心形动画表格
  12. 如何将一个大文件打包压缩成几个小的文件及其解压缩打开方法
  13. 硬刚ChatGPT!文心一言能否为百度止颓?
  14. 基于Android Tv制作一个Tv桌面(二)
  15. rk3288 定时器使用
  16. 移动端APP热更新方案(iOS+Android)
  17. 晶体生长计算机实验报告,食盐晶体生长实验报告
  18. Order-Preserving Encoding(OPE 保序加密)
  19. BAT、网易、蘑菇街面试题整理
  20. 网络收集自我检测题库

热门文章

  1. Python的小宇宙,怎么样才能发挥出来?
  2. shell oracle查询数组,shell 脚本 ---数组
  3. mysql 存储二进制数据_为什么在MySQL中存储二进制数据?
  4. egg前面加什么_国威说阀:阀门前面为什么加国标美标日标之类的?
  5. 晶振噪声及杂散_晶振如何匹配电容看了就知道
  6. ES6的Set和Map你都知道吗?一文了解集合和字典在前端中的应用
  7. php项目通过不了压力测试,压力测试 – Apache ab测试和失败 – Apache或PHP配置问题?...
  8. 《C++ Primer》14.3节练习
  9. 数据结构与算法--图论最短路径算法应用-词阶求解
  10. java继承层次结构,在状态模式中实现继承层次结构 - java