nssl1230-序列【位运算】
正题
题目大意
长度为n的序列,求两个长度大于等于kkk的连续序列,一个位运算“和”后最大的答案,和“或”后最大的答案。
解题思路
首先ororor
b=aorxb=a\ or\ xb=a or x的话,b⩾ab\geqslant ab⩾a
所以答案就是所有的或起来
然后andandand
b=aandxb=a\ and\ xb=a and x的话,b⩽ab\leqslant ab⩽a
所以就找长度为k的就好了,维护一个滑动窗口。
code
#include<cstdio>
#include<algorithm>
#define N 1000010
#define W 32
using namespace std;
int n,k,a[N],v[W],max1,max2;
int main()
{scanf("%d%d",&n,&k);for(int i=1;i<=n;i++){scanf("%d",&a[i]);max1|=a[i];//或的答案for(int j=0;j<W;j++)v[j]+=(a[i]>>j)&1;//加上新的if(i>=k){for(int j=0;j<W;j++)v[j]-=(a[i-k]>>j)&1;//去掉头 int ands=0;for(int j=0;j<W;j++)ands+=(v[j]==k)*(1<<j);//计算答案max2=max(max2,ands);//取最大值}}printf("%d %d",max1,max2);
}
nssl1230-序列【位运算】相关推荐
- LeetCode 187. 重复的DNA序列(哈希/位运算)
1. 题目 所有 DNA 都由一系列缩写为 A,C,G 和 T 的核苷酸组成,例如:"ACGAATTCCG". 在研究 DNA 时,识别 DNA 中的重复序列有时会对研究非常有帮助 ...
- 技术图文:位运算技术在求解算法题中的应用
背景 前段时间,在知识星球立了一个Flag,这是总结Leetcode刷题的第一篇图文. 在总结这篇图文的时候,顺便把遇到的坑写了两篇辅助的图文,大家可以参考一下: 有符号整型的数据范围为什么负数比正数 ...
- 拦截导弹 (加了神奇的位运算)
传送门 :洛谷 P1020 导弹拦截 思路 : 第一问为求一段序列 的最长不下降子序列的长度 第二问求得是 不下降子序列的个数 对于第一问,跑一边 最长不下降子序列即可 对于第二问, 依旧是跑一边第一 ...
- 快速排序算法_基于位运算的快速排序算法
前言 如果你准备看这篇文章,我就当你是懂快速排序算法原理的. 下面是我在2018年10月3日想到的基于二进制位运算对正整数进行的一种快速排序算法,目前的代码只能对正整数进行有效的排序,当然,稍微修改一 ...
- 【NOIP模拟题】“与”(位运算)
因为是与运算,所以我们可以贪心地每次找最高位的,将他们加入到新的序列中,然后每一次在这个新的序列继续找下一个位. 然后最后序列中任意两个的与运算的值都是一样的且是最大的. #include <c ...
- CodeForces - 1451E2 Bitwise Queries (Hard Version)(交互+构造+位运算)
题目链接:点击查看 题目大意:给出一个长度为 n(n 保证了是 2 的幂次),每个数的范围在 [ 0 , n - 1 ] 的一个数组,现在要求通过有限次操作确定下来这个数组: 询问 a[ i ] xo ...
- 【Python位运算】——左移操作(<<)右移操作>>
目录 左移操作 右移操作 其他博主的理解 应用--力扣题目78. 子集 解法 深度优先搜索 位运算 参考文献 左移操作 # 左移操作,左移一位相当于乘以b,a<<b,a' = a*(2^b ...
- USACO2.1【bfs,排序,贪心,dfs,位运算】
前言 开始刷USACO的题了. 正题 刷前必备技能:OI常识,bfs,dfs,位运算,基础贪心,快速排序. T1:城堡 TheCastleThe CastleTheCastle 评测记录: https ...
- 算法之美 : 位运算
上一小节我们用三道题了解一下面试过程中栈和队列的常见面试题.本小节笔者将通过几个 位运算 的题目来带大家熟悉下常用的位运算知识. 相比于栈和队列来讲,笔者自身认为位运算需要掌握的知识就要多一些,包括对 ...
- C#LeetCode刷题-位运算
位运算篇 # 题名 刷题 通过率 难度 78 子集 67.2% 中等 136 只出现一次的数字 C#LeetCode刷题之#136-只出现一次的数字(Single Number) 53.5% 简单 1 ...
最新文章
- 存在于实数域的微观粒子5-可分类性
- uni-app实现传值路径乱码的问题
- linux进程---exec族函数(execl, execlp, execv, execvp, )解释和配合fork的使用
- 没有qpress_MySQL 大数据备份方案之Percona XtraBackup
- FPGA原语类型介绍
- 从编写到上线带你搞定springboot博客之编辑博客时新增标签02
- Spring MVC表单实例
- 应届毕业生如何打破面试焦虑
- 机器学习笔记----(1)什么是机器学习
- Java面试复习大纲2.0(持续更新)
- zipf定律与相似性度量
- Ros自定义消息及使用
- 如何把图片制作成GIF动图?GIF图是怎样合成的?
- 一个C语言编写的坦克大战游戏
- Java编程规范-文件组织与排版
- AS星尘(stardust)粒子系统 学习 3
- nsf5隐写算法 matlab,基于纹理复杂度的JPEG图像自适应隐写
- 目标跟踪:Deepsort--卡尔曼滤波、匈牙利匹配、马氏距离、欧氏距离、级联匹配、reid
- SDRAM学习(五)——串口传图
- 迷宫问题求解(1) 简单迷宫
热门文章
- 服务器运行慢都有哪些问题,服务器数据库的运行速度很慢问题
- 新增一个主键自增长_MyBatis 示例-主键回填
- druid字段级_Druid的数据结构
- python 服务端框架_GitHub - edisonlz/fastor: Python服务端开发框架-极易上手,超出你的想象!...
- apk源码查看工具_如何查看Linux命令工具的源码?
- vue 插入word模板 项目_10 分钟为你的 vue 项目编写代码文档
- c++ new一个结构体_C语言结构体,又一个纸老虎,纯干货讲解(附代码)
- [MyBatisPlus]通用枚举
- [mybatis]typeHandlers日期类型的处理
- Java面向对象编程(高级)