博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
nssl1230-序列【位运算】
阅读量:2023 次
发布时间:2019-04-28

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

正题


题目大意

长度为n的序列,求两个长度大于等于 k k k的连续序列,一个位运算“和”后最大的答案,和“或”后最大的答案。


解题思路

首先 o r or or

b = a   o r   x b=a\ or\ x b=a or x的话, b ⩾ a b\geqslant a ba
所以答案就是所有的或起来

然后 a n d and and

b = a   a n d   x b=a\ and\ x b=a and x的话, b ⩽ a b\leqslant a ba
所以就找长度为k的就好了,维护一个滑动窗口。


code

#include
#include
#define N 1000010#define W 32using 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
>j)&1;//加上新的 if(i>=k) {
for(int j=0;j
>j)&1;//去掉头 int ands=0; for(int j=0;j

转载地址:http://bxzaf.baihongyu.com/

你可能感兴趣的文章
颜色、网页颜色与网页安全色
查看>>
几个移动应用统计平台
查看>>
互联网金融网站走马观花
查看>>
20个Linux服务器安全强化建议(三)
查看>>
Sublimetext3将空格转换为Tab
查看>>
Plupload设置自定义参数
查看>>
[每天五分钟,备战架构师-4]操作系统之设备管理
查看>>
移动端尺寸基础知识
查看>>
idea导入maven项目,包没有自动下载
查看>>
HTML5事件—visibilitychange 页面可见性改变事件
查看>>
安装sass报错
查看>>
转:10分钟了解JS堆、栈以及事件循环的概念
查看>>
转:vue+canvas如何实现b站萌系登录界面
查看>>
转:vue+element实现树形组件
查看>>
vue-router两种模式,到底什么情况下用hash,什么情况下用history模式呢?
查看>>
Lodash JavaScript 实用工具库
查看>>
【进阶1-1期】理解JavaScript 中的执行上下文和执行栈(转)
查看>>
Vue项目构建开发笔记(vue-lic3.0构建的)
查看>>
xampp 搭建好本地服务器以后手机无法访问
查看>>
面试题总结
查看>>