time limit: 1 sec memory limit: 128 mb
submit: 1325 solved: 722
給定乙個長度為n的數列ai,求ai的子串行bi的最長長度,滿足bi&bi-1!=0(2<=i<=len)。
輸入檔案共2行。
第一行包括乙個整數n。
第二行包括n個整數,第i個整數表示ai。
輸出檔案共一行。
包括乙個整數,表示子串行bi的最長長度。
31 2 3
2n<=100000,ai<=2*10^9
by oxer
剛開始被嚇到了,想了想,原來是個類似lis的dp。
f[j]表示序列最後乙個數二進位制第j位為1的序列長度。具體轉移見**
1/*by silvern
*/2 #include3 #include4 #include5 #include6 #include7
#define ll long long
8using
namespace
std;
9const
int mxn=100010;10
intread()
13while(ch>='
0' && ch<='9')
14return x*f;15}
16int
n;17
int f[32],a[mxn],b[32
];18
intmain()
33int ans=0;34
for(j=0;j<31;j++)ans=max(ans,f[j]);
35 printf("
%d\n
",ans);
36return0;
37 }
BZOJ4300 絕世好題
description 給定乙個長度為n的數列ai,求ai的子串行bi的最長長度,滿足bi bi 1 0 2 i len input 輸入檔案共2行。第一行包括乙個整數n。第二行包括n個整數,第i個整數表示ai。output 輸出檔案共一行。包括乙個整數,表示子串行bi的最長長度。sample in...
bzoj4300 絕世好題
絕世傻題 既然要求bi andb i 1 0,那麼就讓他一定成立咯。從1到n列舉,當前數為x,前面的數都操作完了,那麼 fx max 1,然後再更新一下gi 沒了 淦。一開始寫了發trie。寫完才發現根本不對啊tat 好虛啊老是犯這種錯 include define rep i,a,b for in...
BZOJ 4300 絕世好題
de scri ptio n 給定乙個長度為 n 的數列ai 求ai 的子串行bi 的最長長度,滿足bi bi 1 0 2 i len in put 輸入檔案共 2 行。第一行包括乙個整數n。第二行包括 n 個整數,第 i個整數表示ai out put 輸出檔案共一行。包括乙個整數,表示子串行bi ...