0

给定一个 15*15 的对称矩阵,每行包含从 1 到 15 的所有数字,每列包含从 1 到 15 的所有数字,你如何继续证明所有对角线元素都是不同的?我试图证明没有两个对角线元素是相同的,但想不出任何可靠的东西。甚至尝试过 5*5 矩阵,但我无法证明这一点。任何帮助,将不胜感激!

4

3 回答 3

2

这是对称拉丁方阵的问题。第一个观察结果(需要简短证明)是数字 1 到 15 中的每一个在非对角线位置出现偶数次。由于 15 是奇数,这意味着每个数字必须在对角线位置至少出现一次。但是只有 15 个对角线位置,因此每个数字必须在对角线位置恰好出现一次。

于 2013-11-26T11:50:59.633 回答
0

如果“证明”是指针对特定矩阵进行演示,请参见下文。如果“证明”是指在数学上证明,那么所有对角矩阵都是对称矩阵,并且对角矩阵不需要具有唯一元素,因此并非所有对称矩阵在对角线上都有唯一元素。

测试特定矩阵的一种方法是创建一个包含所有对角元素的新数组,然后消除该数组中的重复项,并测试长度。另一种方法是获取每个对角线元素并将其与对角线上具有更高索引的元素进行比较。这是后者,其中包含一些使用基于 0 的数组的伪代码

unique = TRUE
for i = 0 to 14 {
  value = matrix[i][i]
  for j = i+1 to 14      // doesn't loop if i+1 > 14
    if (value == matrix[j][j])
      unique = FALSE
}

补充:OP指出我错过了对每行和每列内容的限制!根据对称性的定义,所有由 N 个唯一值组成且每行和列中没有重复值的对称 NxN 矩阵必须具有仅由一个值组成的对角线。如果 N 为奇数,则生成的矩阵有一个元素同时位于对角线和对角线中(当然,如果 N 为偶数,则没有共同的元素)。鉴于此,您可以看到对角线值在每个位置都必须与对角线不同,但公共元素除外。结合每行和每列有 N 个值的要求,您会看到每行的对角线元素必须不同。这不是正式的,但我希望它有所帮助。

于 2013-08-18T16:25:36.320 回答
0

我们可以假设给定的矩阵是 m * m,我们应该用 m 个不同的数字填充矩阵:N1,N2 ... Nm。

因为每个元素应该在每列/行中出现一次,对于每个数字,它将在矩阵中出现 n) 次。

因为它是对称的,所以每个数字将在对角线上方的上部显示 x(偶数)次,或在对角线下方的下部显示 x(偶数)次。这样,除了对角线之外,每个数字都会在矩阵中出现 2 * x (x 为偶数) 次。

因此,如果给定的 m 是奇数,每个数字应该在对角线上多出现一次;如果给定的是偶数,我们不需要每个数字都出现在对角线上,因为 2 * x 已经是偶数了。

于 2019-10-05T20:23:50.807 回答