bzoj 4300 绝世好题 —— 思路
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4300
记录一下 mx[j] 表示以第 j 位上是1的元素结尾的子序列长度最大值,转移即可。
代码如下:
#include<iostream> #include<cstdio> #include<cstring> #include<algorithm> using namespace std; int const xn=1e5+5,xm=32; int n,a[xn],mx[xm],bin[xm]; int rd() {int ret=0,f=1; char ch=getchar();while(ch<'0'||ch>'9'){if(ch=='-')f=0; ch=getchar();}while(ch>='0'&&ch<='9')ret=(ret<<3)+(ret<<1)+ch-'0',ch=getchar();return f?ret:-ret; } void init() {bin[0]=1;for(int i=1;i<=31;i++)bin[i]=(bin[i-1]<<1); } int main() {n=rd(); int ans=0; init();for(int i=1,x;i<=n;i++){x=rd(); int t=0;for(int j=0;j<=31;j++)if(x&bin[j])t=max(t,mx[j]+1);ans=max(ans,t);for(int j=0;j<=31;j++)if(x&bin[j])mx[j]=max(mx[j],t);}printf("%d\n",ans);return 0; }
转载于:https://www.cnblogs.com/Zinn/p/9887224.html
bzoj 4300 绝世好题 —— 思路相关推荐
- HYSBZ(BZOJ) 4300 绝世好题(位运算,递推)
HYSBZ(BZOJ) 4300 绝世好题(位运算,递推) Description 给定一个长度为n的数列ai,求ai的子序列bi的最长长度,满足bi&bi-1!=0(2<=i<= ...
- BZOJ 4300: 绝世好题( dp )
dp(i)表示二进制的第i位为1时的最大值, 然后从左到右dp -------------------------------------------------------------------- ...
- bzoj 4300: 绝世好题
4300: 绝世好题 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 1930 Solved: 1017 [Submit][Status][Discu ...
- [BZOJ 4300]绝世好题
Description 题库链接 给定一个长度为 \(n\) 的数列 \(a_i\) ,求 \(a_i\) 的子序列 \(b_i\) 的最长长度,满足 \(b_i\wedge b_{i-1}\neq ...
- bzoj 4300 绝世好题——DP
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4300 考虑 dp[ i ] 能从哪些 j 转移过来,就是那些 a[ j ] & a[ ...
- 算法总结---最常用的五大算法(算法题思路)
算法总结---最常用的五大算法(算法题思路) 一.总结 一句话总结: [明确所求:dijkstra是求点到点的距离,辅助数组就是源点到目标点的数组] [最简实例分析:比如思考dijkstra:假设先只 ...
- 【位运算】解题报告:luoguP4310 绝世好题(位运算优化DP)
题目链接:luoguP4310 绝世好题 这是链接 因为答案只能是由两个在二进制表示下至少有一位同是1的a序列里的数&得到的,最后求子序列的个数 f[i]存的是对于a序列中当前遍历到的数中有几 ...
- 《大厂算法面试题目与答案汇总,剑指offer等常考算法题思路,python代码》V1.0版...
为了进入大厂,我想很多人都会去牛客.知乎.CSDN等平台去查看面经,了解各个大厂在问技术问题的时候都会问些什么样的问题. 在看了几十上百篇面经之后,我将算法工程师的各种类型最常问到的问题都整理了出来, ...
- 2021年MathorCupD题思路
钢材制造业中的钢材切割下料问题 问题 1:对于所给的all原料,使用最少的数原料,满足5种料要求,同时需要尽量提高总成材率,并给切割方案. 问题 2:针对给出all原料,请使用最少数原材料,满足对所有 ...
最新文章
- 为 PHP 应用提速、提速、再提速
- ORL Faces Database介绍
- 简单的 HTTP 调用,为什么时延这么大?
- mysql查询更新时的锁表机制分析
- BCGSoft Demo示例展示:控件示例集合(1/2)
- python学习(三)--跟着例子写的贴吧网页爬取
- 并行中的分区Partitioner
- 什么是页损坏 mysql_MySQL数据库页损坏怎么办,innodb_force_recovery参数帮你解决问题...
- typeof和instanceof
- intelj idea中除了Find Usage外的另一种查找级联调用的方法
- 5G 时代,一加的机会在哪里?
- GIS案例练习-----------第七天
- MATLAB学习八(二):标准差std
- PDF文件如何旋转后保存
- 20211101bugku_re_mountain_climbing
- 使用cmd命令远程重启服务器
- WPS文档怎样转换为图片
- 《星际迷航 超越星辰》
- Django 对符合条件的字段求和 aggregate
- 车间制造管理系统(下)
热门文章
- android 对称加密和非对称加密,Android开发加密之对称与非对称加密算法使用案例.pdf...
- 正方体最快最简单画_素描新手入门第一幅画可不只是“正方体”
- 怎么用pycharm更新python_利用PyCharm操作Github(仓库新建、更新,代码回滚)
- c# ef报错_C# EF调用MySql出现“未将对象引用设置到对象的实例”错误解决方案
- linux ntp 'ntp_request.c'远程拒绝服务漏洞,NTP 'ntp_request.c'远程拒绝服务漏洞
- python语言属于哪一种语言_Python与Java:你应该学习哪种语言,他们有什么区别?...
- error: expected unqualified-id before 'public'
- 160 - 21 Cabeca
- math.trunc_JavaScript中带有示例的Math.trunc()方法
- final 在java,final 在java中的注意点