「CMOI R1」First Town of This Journey/Grid Covering

· · 题解

虽然这篇题解很长,但大部分都在证明简单的思路为什么是对的。

以下记黑点是被选中的格点,白点为未被选中的格点。

无限制条件

当不存在某个格点必须被选中/不选中时,答案为 nm-\left\lfloor\frac{n+1}{2}\right\rfloor\left\lfloor\frac{m+1}{2}\right\rfloor。考虑以下分析过程:

考虑相邻两行中各选取一个点,会有 m^2 条连线,这些连线仅经过两个端点。因此,相邻两行中必须存在一行全部被染黑。对于列同理。

n 行中,需要满足以上条件则最少需要 \left\lfloor\frac{n}{2}\right\rfloor 行被染黑。方案为第 2,4,6,...,2\left\lfloor\frac{n}{2}\right\rfloor 行被染黑。

而无论选取哪些行被涂黑后,每一列剩余的白格子数量相等,故可以用同样的方式选取第 2,4,6,...,2\left\lfloor\frac{m}{2}\right\rfloor 染黑。

这样选取后时满足“相邻两行中必须存在一行全部被染黑”的最优解之一。以下证明这种选取方法是正确的:

由于所有的第 2i 行,第 2j 列被染黑,故此图内一个格子 (x,y) 为白色当且仅当 x\equiv y\equiv 1\pmod 2

如果连线端点处存在黑点则条件成立。则考虑任意两个不同的白点 (2x_1+1,2y_1+1)(2x_2+1,2y_2+1) 的连线上:

显然此过程中,中点不会落在端点上,故此过程一定会结束,即存在黑色点在连线上。

由以上过程,则任意两个不同的格点的连线上至少有一个黑点。此时选取的黑色点个数为 \left\lfloor\frac{n}{2}\right\rfloor m+n\left\lfloor\frac{m}{2}\right\rfloor-\left\lfloor\frac{n}{2}\right\rfloor\left\lfloor\frac{m}{2}\right\rfloor=nm-(n-\left\lfloor\frac{n}{2}\right\rfloor)(m-\left\lfloor\frac{n}{2}\right\rfloor)=nm-\left\lfloor\frac{n+1}{2}\right\rfloor\left\lfloor\frac{m+1}{2}\right\rfloor

限制条件为黑点

考虑无限制条件的方案,增加限定点为黑色一定是一个合法方案,则答案 ans 一定满足 nm-\left\lfloor\frac{n+1}{2}\right\rfloor\left\lfloor\frac{m+1}{2}\right\rfloor\leq ans\leq nm-\left\lfloor\frac{n+1}{2}\right\rfloor\left\lfloor\frac{m+1}{2}\right\rfloor+1

则实际上仅需要考虑是否存在无限制条件的解 (a,b) 被涂黑:

分别考虑行和列,是同理的。以下考虑行:

综上条件,再对于行和列的条件再取或,则不存在存在无限制条件的解 (a,b) 被涂黑当且仅当 n\equiv m\equiv a\equiv b\equiv 1\pmod 2

因此此时答案为 \left\{\begin{aligned}&nm-\left\lfloor\frac{n+1}{2}\right\rfloor\left\lfloor\frac{m+1}{2}\right\rfloor+1,n\equiv m\equiv a\equiv b\equiv 1\pmod 2\\&nm-\left\lfloor\frac{n+1}{2}\right\rfloor\left\lfloor\frac{m+1}{2}\right\rfloor\quad\ \ \ ,\text{otherwise.}\end{aligned}\right.

限制条件为白点

考虑如果 (a,b) 必须强制被涂白,则由条件“相邻两行中必须存在一行全部被染黑”,第 a-1 行和第 a+1 行必须全部被涂黑。第 b-1 列和第 b+1 列必须全部被涂黑。

考虑被涂黑行列夹着的四个区域 \left\{\begin{aligned}&x=a\\&y<b-1\end{aligned}\right. \left\{\begin{aligned}&x=a\\&y>b+1\end{aligned}\right. \left\{\begin{aligned}&x<a-1\\&y=b\end{aligned}\right. \left\{\begin{aligned}&x>a+1\\&y=b\end{aligned}\right. 和剩下 4 个区域 \left\{\begin{aligned}&x<a-1\\&y<b-1\end{aligned}\right. \left\{\begin{aligned}&x<a-1\\&y>b+1\end{aligned}\right. \left\{\begin{aligned}&x>a+1\\&y>b+1\end{aligned}\right. \left\{\begin{aligned}&x>a+1\\&y<b-1\end{aligned}\right.,分别以 (a,b) 点(沿四个方向)向外为正方向参考无限制条件的方案构造,依然是满足条件“相邻两行中必须存在一行全部被染黑”的最优解。

此时的构造 (x,y) 为白点当且仅当 x\equiv a\pmod 2,y\equiv b\pmod 2。使用类似前文的证明可得构造是正确的。

化简后答案为 nm-\left\lfloor\frac{n+(a\bmod 2)}{2}\right\rfloor\left\lfloor\frac{m+(b\bmod 2)}{2}\right\rfloor