1 条题解

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

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar qbf!
    Never Give Up

    搬运于2025-08-24 23:04:17,当前版本为作者最后更新于2025-03-31 17:47:30,作者可能在搬运后再次修改,您可在原文处查看最新版

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

    以下是正文


    下文的 \lceil操作\rfloor 表示将集合 AA 变成 Ultra(A)\mathrm{Ultra(A)}

    先考虑如何求出 AA 的 mex-limit,我们观察一些性质。

    性质一:若存在 i[0,2k1]i\in[0,2^k-1] 使得 iAi\notin A,则无论经过多少次操作,都有 mex(A)<2k\mathrm{mex}(A)<2^k

    于是我们可以将 AA2k\ge 2^k 的数删去,不影响 mex-limit。

    性质二:设 kk 为满足 i[0,2k1],iA\forall i\in[0,2^k-1],i\in A 的最大的 kk,若 2kA2^k\in A,则我们令 A{i2k2kiiA}A\leftarrow\{i-2^k\mid 2^k\le i\land i\in A\},不影响 mex-limit。

    证明:我们发现一次操作后,AA 中所有数的二进制下第 kk 位都发生了变化,且此时 [0,2k1][0,2^k-1] 没有被填满,因此我们可以删掉操作后 [2k,2k+11][2^k,2^{k+1}-1] 的部分,即操作前 [0,2k1][0,2^k-1] 的部分。

    性质三:设 kk 为满足 i[0,2k1],iA\forall i\in[0,2^k-1],i\in A 的最大的 kk,若 2kA2^k\notin A(2k+11)A(2^{k+1}-1)\in A,则我们可以令 $A\leftarrow\{i\oplus(2^{k+1}-1)\mid 2^k\le i\land i\in A\}$,不影响 mex-limit。

    证明:此时 mex(A)1=2k1\mathrm{mex(A)}-1=2^k-1,故操作一次后 2k+112^{k+1}-1 就变成了 2k2^k,再利用性质二即可得证。

    性质四:设 kk 为满足 i[0,2k1],iA\forall i\in[0,2^k-1],i\in A 的最大的 kk,若 2kA2^k\notin A(2k+11)A(2^{k+1}-1)\notin A,则 AA 的 mex-limit 为 2k2^k

    性质五:任意集合都是 mex-stable 的,且 mex-limit 必定为 22 的幂。

    有了这几个性质,我们就可以进行 DP 了,设 fw,c,if_{w,c,i} 表示我们在 [0,2w1][0,2^w-1] 中选择 ii 个不同的数,且 00 必须选择,得到集合的 mex-limit 为 2c2^c 的方案数,转移如下:

    • kk 为满足 i[0,2k1],iA\forall i\in[0,2^k-1],i\in A 的最大的 kk,若 kw2k\le w-2,则 [2w1,2w1][2^{w-1},2^w-1] 中的数必定不会影响 mex-limit,我们从 fw1,c,jf_{w-1,c,j} 转移过来,系数是 (2w1ij)\dbinom{2^{w-1}}{i-j}

    • k=w1k=w-1

      • 2w1A2^{w-1}\in A,则根据性质二,我们从 fw1,c,i2w1f_{w-1,c,i-2^{w-1}} 转移过来。

      • 2w1A,(2w1)A2^{w-1}\notin A,(2^w-1)\in A,则根据前面的性质,此时我们发现若 [2w1+2w2,2w1][2^{w-1}+2^{w-2},2^w-1] 填满了,那么 mex-limit 还会递归到 [2w1,2w1+2w21][2^{w-1},2^{w-1}+2^{w-2}-1],因此我们需要设一个辅助 DP。

        gw,c,ig_{w,c,i} 表示在 [0,2w1][0,2^w-1] 中选择 ii 个不同的数,且 00 必须选择,2w12^w-1 必须不选择,得到集合的 mex-limit 为 2c2^c 的方案数,则 fw,c,if_{w,c,i} 会从 gw1,c,jg_{w-1,c,j} 转移过来。

      • 2w1A,(2w1)A2^{w-1}\notin A,(2^w-1)\notin A,则根据性质四,此时 mex-limit 为 2w12^{w-1},方案数为 (2w12i2w1)\dbinom{2^{w-1}-2}{i-2^{w-1}}

    • k=wk=w,那么是平凡的。

    gg 的转移和 ff 是类似的,注意 ffgg 在转移时可能有一些边界情况。

    若直接实现这个 DP,则时间复杂度是 O(22kpoly(k))\mathcal O(2^{2k}\mathrm{poly}(k)) 级别的,注意到转移是卷积的形式,且模数 MM 减去一后可以被 2182^{18} 整除,故我们只需先求出 MM 的原根,就可以用 NTT 优化转移的时间复杂度。

    最后的时间复杂度是 O(i=0k2ii2)=O(2kk2)\mathcal O(\sum_{i=0}^k2^ii^2)=\mathcal O(2^kk^2) 的。

    • 1

    信息

    ID
    9000
    时间
    3000ms
    内存
    512MiB
    难度
    7
    标签
    递交数
    0
    已通过
    0
    上传者