1 条题解

  • 0
    @ 2025-8-24 22:59:54

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar hhoppitree
    成功的秘诀只有一个:加训。故古语有云:日拱一卒,功不唐捐;玉汝于成,溪达四海。

    搬运于2025-08-24 22:59:54,当前版本为作者最后更新于2024-08-28 10:32:12,作者可能在搬运后再次修改,您可在原文处查看最新版

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

    以下是正文


    记行和为 RiR_i,列和为 CiC_i,容易证明 R=C\sum R=\sum C 则必有对应解,记 pp 为输入元素不全相同的一行,qq 为输入元素不全相同的一列(若不存在则为 00,否则任意),若 p=q=0p=q=0 是平凡的(此时必有 R1=R2=R_1=R_2=\cdotsC1=C2=C_1=C_2=\cdots),下文讨论 p+q0p+q\ne0 的情况,在下文推导中,我们将多次用到如下事实:$\{x_1-y_1,x_1+y_1\}=\{x_2-y_2,x_2+y_2\}\Leftrightarrow x_1=x_2,y_1=y_2$,即若 (x1,y1)(x2,y2)(x_1,y_1)\ne(x_2,y_2),则对应的集合交的大小 1\le1

    pq0pq\ne0,我们取出 (p,q)(p,q)(r,q)(r,q),其中 rr 为第 qq 列任一与 (p,q)(p,q) 值不同的位置,先令 Cq=0C_q=0,枚举 44 种可能的 RpR_pRrR_r,则由 RpRrR_p\ne R_r,可推理出全部 CC_{*},进而得出所有 RR_{*},最终使用全局加上同样的数来调整 RC\sum R-\sum C

    考虑拓展这个做法,不妨设 p=0,q0p=0,q\ne0,发现此时可能出现 CC_{*} 全相同的情况导致无法推理出 RR_{*}(由于第 pp 行有至少两种取值,故 CC_{*} 不会全相同),可以证明此时 CC_{*} 必然全相同,而每个 RiR_{i} 都是在一个大小为 22 的集合中选择,使用 bitset\texttt{bitset} 优化背包计算出所有可能的 R\sum R 后选出一种合理的进行调整即可,时间复杂度为 O(n2Vw)\mathcal{O}\left(\dfrac{n^2V}{w}\right)

    • 1

    信息

    ID
    10417
    时间
    5000ms
    内存
    1024MiB
    难度
    7
    标签
    递交数
    0
    已通过
    0
    上传者