博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
BZOJ 4245: [ONTAK2015]OR-XOR
阅读量:6865 次
发布时间:2019-06-26

本文共 483 字,大约阅读时间需要 1 分钟。

要求or的值最大,从高位到低位贪心,高位尽量为0,所以要求优先满足高位每段的xor和都相等

转化为前缀和就是选出0的个数能否>=m

#include
using namespace std;int vis[1000005];long long a[1000005],Sum[1000005];int main(){ int n,m; scanf("%d%d",&n,&m); for (int i=1; i<=n; i++){ scanf("%lld",&a[i]); Sum[i]=Sum[i-1]^a[i]; } long long ans=0; for (int i=62; i>=0; i--){ int sum=0; for (int j=1; j<=n; j++) if (!vis[j] && (Sum[j]&(1ll<
=m && !(Sum[n]&(1ll<

  

转载于:https://www.cnblogs.com/silenty/p/9783927.html

你可能感兴趣的文章
openssl
查看>>
2017 WWDC
查看>>
iOS 动态更换icon
查看>>
dd命令测试IO
查看>>
Jmeter连接MySQL数据库
查看>>
HDU5446:Unknown Treasure——题解
查看>>
在C#中SendMessage和PostMessage的参数传递
查看>>
维护MMO项目的随想
查看>>
Resharper 检测所有NullReferenceExceptions(空指针)
查看>>
【java】java工具类StringUtils,org.apache.commons.lang3.StringUtils
查看>>
log4j 日志限制大小 拆分成30个 不按日期分日志 按大小拆分 按日期产生...
查看>>
使用PROJ4库将地心直角坐标(XYZ)转为地心大地坐标(BLH)
查看>>
贯穿应用开发始终的八大性能陷阱
查看>>
初创企业的初创之路
查看>>
POJ1064(二分搜索)解题报告
查看>>
理解Hinted Handoff
查看>>
我的第一个 JSP (SSH) 个人网站【开源】
查看>>
在JAVA中线程到底起到什么作用
查看>>
jdk的新特性
查看>>
SQL server根据值搜表名和字段
查看>>