题解 P8757
感觉难度应该就绿,在学校五分钟想出来了。
首先考虑完美长度是多少,显然对于一个完美子序列,第一个元素的质因数越多,它往后能延伸的完美子序列最长。而什么样的数质因数最多呢? 2 k 2^k 2k。
所以我们算出 k = ⌊ log 2 ( n ) ⌋ k=\lfloor\log_2(n)\rfloor k=⌊log2(n)⌋, k + 1 k+1 k+1 即为 n n n 阶最大完美长度。
然后再来考虑怎么构造出长度为 k + 1 k+1 k+1 的完美子序列,显然有:
2 k 2 k − 1 . . . 4 2 1 \begin{matrix} 2^{k}&2^{k-1}&...&4&2&1 \end{matrix} 2k2k−1...