1 条题解

  • 0
    @ 2025-8-24 23:04:18

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar Acoipp
    We shall never surrender!

    搬运于2025-08-24 23:04:18,当前版本为作者最后更新于2024-12-25 14:22:29,作者可能在搬运后再次修改,您可在原文处查看最新版

    自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多

    以下是正文


    首先最大反链等于最小链覆盖,所以只需要求出一个方案,满足大小为 n2\frac n2,且最小点覆盖为 m2\frac m2 即可。

    我们考虑贪心的从左往右扫线段,将线段按照右端点排序,然后挨个选择没有被覆盖的区间中右端点最小的作为新的最小点覆盖点集中的点。

    然后等到最小点覆盖有 m2\frac m2 的时候,将所有区间分成两部分,能够被当前最小点覆盖覆盖到的区间和不能的。

    这两部分中一定有一部分区间个数大于等于 n2\frac n2,于是选择大的那一部分,在保证最小点覆盖为 m2\frac m2 的时候任意选择剩下的区间即可。

    时间复杂度 O(nlogn)O(n \log n),空间复杂度 O(n)O(n)

    • 1

    信息

    ID
    9005
    时间
    1000ms
    内存
    512MiB
    难度
    6
    标签
    递交数
    0
    已通过
    0
    上传者