传送门
貌似是防
a
k
ak
ak题?
不是很清楚。
事实上如果两个人没有严格的大小关系,我们给他们两个连一条边。
这样可以构成很多连通块。
而且对于连通块
a
,
b
a,b
a,b,
a
i
a_i
ai和
b
j
b_j
bj都有严格的大小关系。
于是每一组询问我们都求出所有的连通块,然后属性最强的连通块里元素个数就是答案。
但直接做是
O
(
n
2
)
O(n^2)
O(n2)的。
继续观察会发现我们每次加入点如果可以合并连通块的话,合并的连通块是连在一起的
于是每次加入一个数时我们用平衡树找位置,把能合并的连续一段都删掉然后把当前合并好的新连通块插入。
这个可以用
s
e
t
set
set搞定。
代码