2d阵列排列证明

时间:2014-06-03 17:17:52

标签: math

我想知道在给定三条规则的情况下是否可以获得4x4整数数组的任何可能组合:

  • 您可以向上或向下移动任何列
  • 你可以向左或向右移动任何一行
  • 您可以向左,向右,向上或向下移动整个阵列

也就是说,你可以改变:

[1]  [2]  [3]  [4]
[5]  [6]  [7]  [8]
[9]  [10] [11] [12]
[13] [14] [15] [16]

给出这三个规则的相同16个值的4x4数组的任何可能组合。

基本上,我只是想知道是否有不可能的组合。

1 个答案:

答案 0 :(得分:2)

您的操作足以达到所有可能的组合 为了证明这一点,我们只需要证明有一系列操作交换[1][2]并将剩余的元素保留在原始位置,因为通过操作的对称性,我们可以类似地交换任何水平或者垂直相邻的元素对,并且可以递归地遍历元素以交换任何一对元素。

将L定义为将第一行向左移动一步,将R向右移动一步,将U向右移动第一列,将D向右移动一步向下移动,LURDLUR运算序列

[2]  [1]  [3]  [4]
[9]  [6]  [7]  [8]
[13] [10] [11] [12]
[5]  [14] [15] [16]

这会交换元素[1][2]并向上旋转元素[5][9][13]。重复两次序列将使后者返回其原始位置,同时保持[1][2]交换,因此我们可以重复交换元素以获得任何可能的组合。
好难题BTW: - )