传送门

简单dp。

根据题目的描述。

如果数列bn{b_n}bn​合法。

那么有:bi−1b_{i-1}bi−1​&bi!=0b_i!=0bi​!=0,因此我们用f[i]f[i]f[i]表示数列b最后一位第i个二进制位为1的时候b数列的最长长度。

然后简单转移一下就行了。

#include<bits/stdc++.h>
#define N 100005
using namespace std;
inline int read(){
	int ans=0;
	char ch=getchar();
	while(!isdigit(ch))ch=getchar();
	while(isdigit(ch))ans=(ans<<3)+(ans<<1)+(ch^48),ch=getchar();
	return ans;
}
int n,a[N],f[40];
int main(){
	n=read();
	for(int i=1;i<=n;++i){
		a[i]=read();
		int tmp=0;
		for(int j=0;(1ll<<j)<=a[i];++j)if((1ll<<j)&a[i])tmp=max(tmp,f[j]);
		++tmp;
		for(int j=0;(1ll<<j)<=a[i];++j)if((1ll<<j)&a[i])f[j]=tmp;
	}
	int ans=0;
	for(int i=0;i<=40;++i)ans=max(ans,f[i]);
	printf("%d",ans);
	return 0;
}

最新文章

  1. webform控件
  2. nginx按天切割日志
  3. 顺序容器:vector,deque,list
  4. Xcode repository host is unreachable
  5. 【COGS495】窗口
  6. ios 运行模式
  7. [cocos2dx笔记011]使用Cocostudio UI编辑器
  8. Vue2.0源码阅读笔记(一):选项合并
  9. oracle11g 数据库修改 UTF8字符集
  10. Spring事务实现分析
  11. linux系统虚拟机下安装jdk
  12. 分享一个Godaddy的优惠码,可以优惠35%——2013-11-23
  13. 【Unity 3D】碰撞检测
  14. 《ASP.NET Web API 2框架揭秘》
  15. 第四章 dubbo内核之aop源码解析
  16. 【Golang】解决Go test执行单个测试文件提示未定义问题
  17. 记录.NET Core部署到Linux之发布项目到Linux(2)
  18. HDFS上传数据的流程
  19. redis使用哈希槽实现集群
  20. Bootstrap 3之美02-Grid简介和应用

热门文章

  1. bean-json-bean-json 工具
  2. as3 连接mysql
  3. visual studio 2017 报错 无法下载安装文件。请检查Internet连接,然后重试
  4. redis 查询key数量
  5. ubuntu 安装qq方案
  6. 更改linux swappiness 提高物理内存使用率
  7. C++17尝鲜:在 if 和 switch 语句中进行初始化
  8. 软件工程导论复习 如何画系统流程图和数据流图 part2
  9. Parametric Statistics
  10. 查看webdriver针对浏览器的一些函数