题解通道关了,不知道可不可以发,不能发就删了吧(
一个必要条件:考虑一个更普通的问题,即能否剖分成两个长度没有限制的上升序列。根据 Dilworth 定理可以知道形如 (i1,i2,⋯ ,ik)(i_1,i_2,\cdots,i_k)(i1,i2,⋯,ik) 的满足 ∀p<k,ip<ip+1∧aip≥aip+1\forall p<k,i_{p}<i_{p+1}\land a_{i_p}\geq a_{i_{p+1}}∀p<k,ip<ip+1∧aip≥aip+1 的链的长度最大是 222。
考虑把上面提到的逆序对建一个图,可以发现建成的图一定是一个二分图。那么把二分图每个连通块两部的点的个数跑出来做分组背包即可,最后检查 fn/2f_{n/2}fn/2 是否为 111。
代码也不难写。