全部评论 4

  • 对于存在性,下证 0<in,0<jm,\forall0<i\leq n,0<j\leq m,

    ai,jmin0<km{ai,k}=a1,jmin0<km{a1,k}\begin{equation}a_{i,j}-\min\limits_{0<k\leq m}\{a_{i,k}\}=a_{1,j}-\min\limits_{0<k\leq m}\{a_{1,k}\}\end{equation}

    是存在一种方案的充要条件.

    对于必要性,由存在一种方案,可设第 ii 行被加了 rir_i 次,第 ii 列被加了 cic_i 次,则 ai,j=ri+cja_{i,j}=r_i +c_j,所以,

    ai,jmin0<km{ai,k}=ri+cjmin0<km{ri+ck}=cjmin0<km{ck}\begin{align*}a_{i,j}-\min\limits_{0<k\leq m} \{a_{i,k}\}=&r_i+c_j-\min\limits_{0<k\leq m} \{r_i+c_k\}\\=&c_j-\min\limits_{0<k\leq m}\{c_k\}\\\end{align*}

    ii 的选择无关,必要性得证.

    对于充分性,取 ri=min0<km{ai,k},cj=a1,jmin0<km{a1,k}r_i=\min\limits_{0<k\leq m}\{a_{i,k}\},c_j=a_{1,j}-\min\limits_{0<k\leq m}\{a_{1,k}\},结合 (1)(1) 式,易证该方案合法,充分性得证.

    下证该算法能输出最优解.

    首先,对于第 ii 行,记 q=min{jai,j=min0<km{ai,k}}=min{jri+cj=min0<km{ri+ck}}=min{jcj=min0<km{ck}}q=\min\{j|a_{i,j}=\min\limits_{0<k\leq m}\{a_{i,k}\}\}=\min\{j|r_i+c_j=\min\limits_{0<k\leq m}\{r_i+c_k\}\}=\min\{j|c_j=\min\limits_{0<k\leq m}\{c_k\}\}ii 的选择无关,即对于第 ii 行,该行最左边的最小值为 ai,qa_{i,q}.

    pp 使得 ap,q=min0<kn{ak,q}a_{p,q}=\min\limits_{0<k\leq n}\{a_{k,q}\},容易发现 ap,q=min0<in,0<jm{ai,j}a_{p,q}=\min\limits_{0<i\leq n,0<j\leq m}\{a_{i,j}\}. 进而 rp[0,ap,q],cq[0,ap,q]r_p\in[0,a_{p,q}],c_q\in[0,a_{p,q}],结合 ai,ja_{i,j} 为最小值,两个范围两边均可以取等.

    那么最少操作数 ansans 满足:

    ans=min{i=1mci+i=1nri}=min{i=1m(ap,irp)+i=1n(ai,qcq)}=i=1map,i+i=1nai,qmin{rpm+cqn}\begin{align*}ans=&\min\{\sum_{i=1}^m c_i +\sum_{i=1}^n r_i\}\\=&\min\{\sum_{i=1}^m{(a_{p,i}-r_p)}+\sum_{i=1}^n{(a_{i,q}-c_q)}\}\\=&\sum_{i=1}^m a_{p,i}+\sum_{i=1}^n a_{i,q}-\min\{r_p*m+c_q*n\}\\\end{align*}

    结合 rp+cq=ap,qr_p+c_q=a_{p,q} 为定值,容易发现最小值只会在 (rp,cq)=(0,ap,q)(r_p,c_q)=(0,a_{p,q})(ap,q,0)(a_{p,q},0) 时取到.

    (rp,cq)=(ap,q,0)(r_p,c_q)=(a_{p,q},0) 时,

    ans=min{i=1m(ap,irp)+i=1n(ai,qcq)}=min{i=1mci+i=1nai,q}=min{i=1m(a1,ir1)+i=1nmin0<jmai,j}=min{i=1m(a1,i(a1,qcq))+i=1nmin0<jmai,j}=min{i=1m(a1,ia1,q)+i=1nmin0<jmai,j}=min{i=1m(a1,imin0<jma1,j)+i=1nmin0<jmai,j}=ansa\begin{align*}ans=&\min\{\sum_{i=1}^m{(a_{p,i}-r_p)}+\sum_{i=1}^n{(a_{i,q}-c_q)}\}\\=&\min\{\sum_{i=1}^m{c_i}+\sum_{i=1}^n{a_{i,q}}\}\\=&\min\{\sum_{i=1}^m{(a_{1,i}-r_1)}+\sum_{i=1}^n{\min\limits_{0<j\leq m}a_{i,j}}\}\\=&\min\{\sum_{i=1}^m{(a_{1,i}-(a_{1,q}-c_q))}+\sum_{i=1}^n{\min\limits_{0<j\leq m}a_{i,j}}\}\\=&\min\{\sum_{i=1}^m{(a_{1,i}-a_{1,q})}+\sum_{i=1}^n{\min\limits_{0<j\leq m}a_{i,j}}\}\\=&\min\{\sum_{i=1}^m{(a_{1,i}-\min\limits_{0<j\leq m}a_{1,j})}+\sum_{i=1}^n{\min\limits_{0<j\leq m}a_{i,j}}\}\\=&ansa \end{align*}

    同理,当 (rp,cq)=(0,ap,q)(r_p,c_q)=(0,a_{p,q}) 时,ans=ansbans=ansb,故 ans=min{ansa,ansb}ans=\min\{ansa,ansb\}.
    证毕.

    由于 LaTeX\LaTeX 是为了写这篇证明现学的,且字数有限,部分内容可能解释不清或不规范,排版也一般,请见谅。

    2026-02-05 来自 上海

    0
    • 所有 min1in\min\limits_{1\leq i\leq n} 之类的都写成了 min0<in\min\limits_{0<i\leq n}(为了省字数:\min\limits_{1\leq i\leq n} 比 \min\limits_{0<i\leq n}多了四个字符,通篇下来得省了70个字符左右,我真棒),望见谅。

      2026-02-05 来自 上海

      0
    • 强强强

      2026-02-05 来自 浙江

      0
    • %%%

      2026-02-05 来自 上海

      0
  • 你真的会睡觉吗

    2026-02-02 来自 广东

    0
  • 似乎找到了一个hack:
    4 2
    7 9
    5 7
    2 4
    6 8

    2026-01-10 来自 江西

    0
    • 这显然不是hack啊,我的代码和std(见官方题解)输出一样,都是

      YES
      18
      

      2026-01-10 来自 浙江

      0
    • 为什么我测得不一样???

      2026-01-10 来自 江西

      0
    • 你测的啥

      2026-01-10 来自 浙江

      0
  • ddd

    2026-01-08 来自 浙江

    0
暂无数据

提交答案之后,这里将显示提交结果~

首页