BZOJ4300 绝世好题
2015-10-30 20:48
302 查看
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=4300
分析:DP.一开始想错了:以为认定一位,有最多数的就是答案,后来发现不一定子序列所有数都具有这一位,因为只是bi与bi-1关系。。。于是开始了正解之旅。。
代码:
分析:DP.一开始想错了:以为认定一位,有最多数的就是答案,后来发现不一定子序列所有数都具有这一位,因为只是bi与bi-1关系。。。于是开始了正解之旅。。
代码:
#include <cstdio> #include <algorithm> #include <cstring> using namespace std; const int Tmax2=40; int n,f[Tmax2],ans; bool v[Tmax2]; int main() { int i,a,j,top; scanf("%d",&n); for(i=1;i<=n;i++) { scanf("%d",&a); j=-1; memset(v,0,sizeof(v)); while(a>0) { v[++j]=(a&1); a>>=1; } top=0; for(j=0;j<=35;j++) if(v[j]) top=max(top,f[j]+1); for(j=0;j<=35;j++) if(v[j]) f[j]=max(f[j],top); } for(i=0;i<=35;i++) ans=max(ans,f[i]); printf("%d\n",ans); return 0; }
相关文章推荐
- 一个有序正整数集S,若要保证整数集中所有的数通过组合(相加)可以表示1~N中任意一个正整数
- C++编写安全OCX,IE不弹出安全提示
- 腾讯新闻评论数据爬取
- python模块官网大全
- 二维数组中的查找
- 软工文档中的那些图
- sicily 1031. Campus
- Java基础学习12(Java SE图解以及Java基本思想讲解)
- Java 自动装箱与拆箱(Autoboxing and unboxing)
- 排序
- HANA学院(2)-使用数据服务(use data services)
- IC设计笔试
- poj3461Oulipo
- [M]表格中的天正文字转换问题
- XYLX 10.12 数列
- sicily 1438. Shopaholic
- 网 上 找 了 些 练 习 题 试 试 手
- King is back,English study in the morning
- UML九种图与软件开发
- poj 3281 Dining【拆点网络流】