zoukankan      html  css  js  c++  java
  • 「考试」老司机的狂欢

    啊考场上没想到。

    直接二分答案,然后$nlogn$求解最长上升序列来$check$是否大于$K$即可。

    然后恶心的是要求输出方案,而且。。。字典序最小。

    我们考虑二分出答案之后求出方案。

    $LIS$的过程其实类似于建树,我们要把当前的决策挂在当前树上某一深度的点中,字典序最小的方案下面。

    那么当我们比较两个方案的时候,只需要求出他们在$LIS$树上的$LCA$,那么在$LCA$以上的部分完全相同,所以只需要比较他们在$LCA$一下的部分中最小值的大小,较小的更优,一边跑$LIS$一边跑倍增$LCA$即可。

    复杂度$O(nlognlog88400+nlog^2n)$

  • 相关阅读:
    shell eval命令
    嘟嘟嘟
    07 linkextractor的基本用法
    rabbitmq消息队列
    5. 哨兵集群
    4.主从同步
    3. redis持久化存储
    2. redis 安全
    1.redis基础
    06. scrapy的Request对象
  • 原文地址:https://www.cnblogs.com/Lrefrain/p/11702737.html
Copyright © 2011-2022 走看看