%%%$Huge skyh rank1太巨了$
$T1:d$
可以发现最优决策一定是删x个a最小的,m-x个b最小的
那么我们先删m个a最小的,然后一个个把大的选上,同时删去当前y最小的就好了
复杂度$O(nlogn)$
$T2:e$
可以发现题中要求的联通块其实就是他们到公共lca的路径并
求abs可以很自然地想到求前驱后继,这个可以用主席树来维护
剩下的乱搞就好了,树剖或者树上主席树都行
复杂度$O(nlog^{2}n)$/$O(nlogn)$
$T3:f$
考虑每一位的贡献
显然两个数成为逆序对只与他们最高的不同位有关
预处理出来每一位$XOR 1$/$XOR 0$对逆序对的贡献
然后考虑怎么求出答案
显然排名随着$f(x)$单调递增
二分答案,考虑怎么$check$
利用$meet in middle$思想,把k位的数分成两个$frac{k}{2}$位
将左边排序,每次扫描右边并在左边二分查找就好了
也可以用单调指针维护,能省去一个$log$
复杂度$O(nk+2^{frac{k}{2}}log^{2})$/$O(nk+2^{frac{k}{2}}log))$