CF 417 D 题解

题意

构造一个 \(n \times m\) 的正整数组成的矩形 \(A_{i,j}\),设 \(row_i = \sum_{j=1}^m a_{i,j},col_j = \sum_{i=1}^n a_{i,j}\),要求满足 \(\sum_{i=1}^n row_i^2,\sum_{i=1}^m col_i^2\) 都是平方数。

题解

一步都想不到我自闭了。

一个想法是先考虑一行的情况再看看能否能推广:

现在我们的问题是构造一个序列 \(a_i\),满足 \(\sum_{i=1}^n a_i^2\) 是平方数。注意到 \((n-2)^2 = n^2-4n+4 = n^2-4(n-1) = n^2-\sum_{j=2}^n 2^2\),但是构造的矩阵不能有负数,移项可以发现有 \(n^2 = (n-2)^2+\sum_{j=2}^n 2^2\),所以可以构造序列 \(a_1 = n-2,a_2 = a_3 = \ldots = a_n = 2\)

一种更好的推法是考虑一个定理:如果一个正整数 \(x\) 能被若干个数的平方和表示出,那么 \(x^2\) 也一定能被表示出。

证明:

\[\begin{aligned} x&=\sum_{i=1}^n a_i^2\\ x^2&=(\sum_{i=1}^n a_i^2)^2\\ &= (\sum_{i=1}^{n-1}a_i^2 - a_n^2 + 2a_n^2)^2\\ &= (\sum_{i=1}^{n-1}a_i^2-a_n^2)^2 +4(\sum_{i=1}^{n-1} a_i^2-a_n^2)a_n^2 + 4a_n^4\\ &= (\sum_{i=1}^{n-1}a_i^2-a_n^2)^2 +4a_n^2\sum_{i=1}^{n-1} a_i^2\\ &= (\sum_{i=1}^{n-1}a_i^2-a_n^2)^2 +\sum_{i=1}^{n-1} (2a_ia_n)^2\\ \end{aligned} \]

所以如果我们构造出 \(b_i\) 满足 \(x=\sum_{i=1}^n b_i^2\),那么我们就可以令 \(a_1 = \sum_{i=1}^{n-1}b_i^2-b_n^2,a_i = 2b_ib_n\) ,就可以得到 \(x^2 = (\sum_{i=1}^n a_i^2)^2\)

所以说我们取任意 \(b_1 = b_2 = \ldots = b_n = 1\),就可以得到 \(a_1 = n-2,a_2 = a_3 = \ldots = a_n = 2\)

但是注意 \(n \leq 2\) 的时候要特判一下因为不能有 \(\leq 0\)

然后我们考虑如何推广到矩阵上:观察一下其中一个判定的式子:

\[\sum_{i=1}^n (\sum_{j=1}^m c_{i,j})^2 \]

发现中间那个东西很难拆,但是我们如果设 \(c_{i,j} = a_{i} \times b_j\),可以得到:

\[\begin{aligned} \sum_{i=1}^n (\sum_{j=1}^m c_{i,j})^2 &= \sum_{i=1}^n (\sum_{j=1}^m a_ib_j)^2\\ &= \sum_{i=1}^n a_i^2 (\sum_{j=1}^m b_j)^2\\ &= x_1^2\sum_{i=1}^n a_i^2\\ &= (x_1x_2)^2 \end{aligned} \]

显然满足条件,于是就做完了。

最后一步这样构造的原因可能是:首先整体乘一个数不会影响答案,现在的主要矛盾是和不相等,也就是

\[\sum_{i=1}^n a_i \neq \sum_{j=1}^m b_j \]

我们可以通过乘上某些数来解决这个问题,其实就是给你两个数 \(a,b\) 让你随便找一个 \(c,d\) 满足 \(ac = bd\)。这里是令 \(c=b,d=a\),所以和就是 \(\sum_{i=1}^n \sum_{j=1}^m a_ib_j\) 观察可得 \(c_{i,j} = a_i b_j\)

posted @ 2020-09-22 23:44  RainAir  阅读(51)  评论(0编辑  收藏  举报