[bzoj4300][绝世水题]

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012732945/article/details/49466861
#include using namespace std; int n,f[32],x; int main(){ scanf("%d",&n); int an=1; for(int i=1;i<=n;i++){ scanf("%d",&x); if(!x)continue; int y=0; for(int j=0;j<32;j++)if(x>>j&1) y=max(y,f[j]+1); for(int j=0;j<32;j++)if(x>>j&1) f[j]=y;an=max(an,y); }cout<<an<<endl; return 0; }

手机码字不太方便。。。上代码

猜你喜欢

转载自blog.csdn.net/u012732945/article/details/49466861