只含-1和1矩阵

发布时间 2023-03-22 21:13:21作者: 希望上课能听懂

题目:
即 一个NM的矩阵,如果这个矩阵的每一行和每一列的乘积都是1或者-1,那么满足要求的不同矩阵一共有多少个
我们要求的是N
M的矩阵,我们先看看(N-1)(M-1)的矩阵
我们丢去第M列,第N行后,剩下的(N-1)(M-1)矩阵的每个位置选1还是-1都随便
因为我们可以在第M列以及第N行进行调整以达到我们的要求。
那么对于任意的(N-1)(M-1)矩阵,我们都有调整第M列以及第N行的决策使得我们的N
M的矩阵满足条件吗

先进行讨论决策(我们先插入第M列,因为缺少第N行,所以是N-1个数)
如果K1
那么我们第M列中(N-1)个数的乘积就和(N-1)(M-1)矩阵中所有的数乘积一样假如为A。(很容易证明)
然后我们再插入第N行,在插入第N行的时候,我们先不插入最后一个数,因为最后一个数的调整方向不仅是第N行还有第M列
同样的第N行前M-1个数的乘积也等于(N-1)(M-1)矩阵中所有的数乘积,为A。那么第N行第M个数为A就是一种正确方案。
我们方向K
1,总能找到正确方案,所以答案是前面(N-1)(M-1)矩阵的所有方案也就是1^(N-1)*(M-1);
如果K-1
我们以上面同样的方式插入,留下最后一个数来判断能否得到合法矩阵。
只不过这次我们的性质没有那么好,也就是如果第M列中(N-1)个数的乘积为A
第N行前M-1个数的乘积就可能不为A,为-A,如果一个为A,一个为-A,那么最后一个数无论怎么选择都无法保证
整个矩阵合法,所以就可能存在方案数为0的情况。
现我们去看看那种情况方案数为0
如果前(N-1)(M-1)矩阵所有数的乘积为-1,那么也就是第M-1列有奇数个-1,如果N-1是偶数的话,第M列也有奇数个-1
乘积就为A = -1,同样的,对于最后一行如果M-1是偶数的话,第N行前M-1个数的乘积也为-1,就一样了,此时有合法解
此时N和M的奇偶性相同,如果不同呢,显然就不等了,所以就没有合法方案。对于前(N-1)(M-1)矩阵所有数的乘积为1的
情况类似,此时就有偶数个-1,其他论证与上面一样。所以对于K
-1,奇偶性不同则无解。
即(N-M)%2==1