3x3的棋盘

STEM版,合并数学,物理,化学,科学,工程,机械。不包括生物、医学相关,和计算机相关内容。

版主: verdeliteTheMatrix

头像
(ヅ)楼主
论坛支柱
论坛支柱
帖子互动: 549
帖子: 11819
注册时间: 2022年 8月 21日 14:20

3x3的棋盘

帖子 (ヅ)楼主 »

里面分别是1-8,8个数字,剩下一个空位,一个可行步骤指的是:把空位相邻的一个数字挪到空位里,同时这个数字原位置成为空位

e.g.

1 2 3 1 3
4 6 -> 4 2 6
7 5 8 7 8 9

最终目标:
把棋盘排成
1 2 3
4 5 6
7 8

棋盘的inverse是棋子排列的一个属性,理解为按照排拉成一个1x9的行,然后前面数字大于后面数字的pair数量:
e.g.
1 2 3 4 5 6 7 8 => inverse = 0
8 7 6 5 4 3 2 1 => inverse = 28

并非所有棋盘配置都可解:

e.g. (unsolvable)
1 2 3
4 5 6
8 7


问题:
1. (easy) 如果一个初始棋盘配置为可解的,那么其inverse必须为偶数
2. (medium)如果一个棋盘配置的inverse为偶数,则此配置可解
头像
verdelite
论坛元老
论坛元老
帖子互动: 1045
帖子: 24295
注册时间: 2022年 7月 21日 23:33

Re: 3x3的棋盘

帖子 verdelite »

(ヅ) 写了: 2023年 2月 9日 14:42 里面分别是1-8,8个数字,剩下一个空位,一个可行步骤指的是:把空位相邻的一个数字挪到空位里,同时这个数字原位置成为空位

e.g.

1 2 3 1 3
4 6 -> 4 2 6
7 5 8 7 8 9

最终目标:
把棋盘排成
1 2 3
4 5 6
7 8

棋盘的inverse是棋子排列的一个属性,理解为按照排拉成一个1x9的行,然后前面数字大于后面数字的pair数量:
e.g.
1 2 3 4 5 6 7 8 => inverse = 0
8 7 6 5 4 3 2 1 => inverse = 28

并非所有棋盘配置都可解:

e.g. (unsolvable)
1 2 3
4 5 6
8 7


问题:
1. (easy) 如果一个初始棋盘配置为可解的,那么其inverse必须为偶数
2. (medium)如果一个棋盘配置的inverse为偶数,则此配置可解
Python党觉得这题可以穷举。
meiyoumajia(没有马甲)
论坛元老
论坛元老
帖子互动: 56
帖子: 17343
注册时间: 2022年 7月 22日 15:16
来自: 宇宙

Re: 3x3的棋盘

帖子 meiyoumajia(没有马甲) »

只考虑I值不为0的情况

从单行序看,每次相对不动或者让其中1个向前或向后移动2个位置
不失本质,只考虑移动2位的情况

1.
反向/逆时推而“复盘”

每次操作是
abc 变

1_1. bca
ab ac bc比较变
ba ca bc
奇偶性不变

1_2. cab
类似
奇偶性不变



2.
把8移到最后
2_1.一直到尾部
821类型
I值减2

2_2
最后一步可能会是
182或281
参见1中奇偶性不变的讨论

问题就转化成了size 7的问题。如此下去。。。
头像
(ヅ)楼主
论坛支柱
论坛支柱
帖子互动: 549
帖子: 11819
注册时间: 2022年 8月 21日 14:20

Re: 3x3的棋盘

帖子 (ヅ)楼主 »

大家要从不变量的角度去思考
meiyoumajia(没有马甲)
论坛元老
论坛元老
帖子互动: 56
帖子: 17343
注册时间: 2022年 7月 22日 15:16
来自: 宇宙

Re: 3x3的棋盘

帖子 meiyoumajia(没有马甲) »

我那样做不也做出来了吗?为啥非要用不变量(如果有,就是之前说的:I的奇偶性不会因做了任何可允许操作而变吧?)?

原问题是(I,8)
(I,8)按第2部分的做法,(如有需要必能做些准备后把8向后移动直到移动到最后)等价简化成(I-偶数,7)
(上述做法可用,只是叙述同样稍微有点啰嗦)。。。
最终就是(I-偶数=0或1,3)
也就是:
123 (若I为偶)

213 (若I为奇)

因此,I是偶数与可解性完全等同。
原题两部分这样都被证明了。
meiyoumajia(没有马甲)
论坛元老
论坛元老
帖子互动: 56
帖子: 17343
注册时间: 2022年 7月 22日 15:16
来自: 宇宙

Re: 3x3的棋盘

帖子 meiyoumajia(没有马甲) »

我看过(我小孩玩过)这种常见的游戏板/”电子板“。最简单的是3x3,但我家里也有4x4(或者更高)的。

如果是4x4或其它n。应该也探求一下。

考虑前/后移动3位。

abcd

bcda或dabc
考虑前种:
ab ac ad bc bd cd
ba ca da bc bd cd

每次操作都改变了奇偶性。因此结论不成立了。


那个结论对
偶数n x 偶数n
的游戏板不成立,而对
奇数x奇数
情况成立
头像
(ヅ)楼主
论坛支柱
论坛支柱
帖子互动: 549
帖子: 11819
注册时间: 2022年 8月 21日 14:20

Re: 3x3的棋盘

帖子 (ヅ)楼主 »

meiyoumajia 写了: 2023年 2月 9日 22:46 我那样做不也做出来了吗?为啥非要用不变量(如果有,就是之前说的:I的奇偶性不会因做了任何可允许操作而变吧?)?

原问题是(I,8)
(I,8)按第2部分的做法,(如有需要必能做些准备后把8向后移动直到移动到最后)等价简化成(I-偶数,7)
(上述做法可用,只是叙述同样稍微有点啰嗦)。。。
最终就是(I-偶数=0或1,3)
也就是:
123 (若I为偶)

213 (若I为奇)

因此,I是偶数与可解性完全等同。
原题两部分这样都被证明了。

主要是我没怎么看懂你在说什么

我明天再读一读
meiyoumajia(没有马甲)
论坛元老
论坛元老
帖子互动: 56
帖子: 17343
注册时间: 2022年 7月 22日 15:16
来自: 宇宙

Re: 3x3的棋盘

帖子 meiyoumajia(没有马甲) »

(ヅ) 写了: 2023年 2月 10日 00:41 主要是我没怎么看懂你在说什么

我明天再读一读
横向移动相当于1x9序列不变
纵向下移a相当于只是1x9中abc变成了bca,而Inverse的奇偶性却不变
头像
YWY(夜未央)
论坛元老
论坛元老
2023-24年度十大优秀网友
帖子互动: 1336
帖子: 14396
注册时间: 2022年 7月 22日 17:25

Re: 3x3的棋盘

帖子 YWY(夜未央) »

(ヅ) 写了: 2023年 2月 9日 14:42 里面分别是1-8,8个数字,剩下一个空位,一个可行步骤指的是:把空位相邻的一个数字挪到空位里,同时这个数字原位置成为空位

e.g.

1 2 3 1 3
4 6 -> 4 2 6
7 5 8 7 8 9

最终目标:
把棋盘排成
1 2 3
4 5 6
7 8

棋盘的inverse是棋子排列的一个属性,理解为按照排拉成一个1x9的行,然后前面数字大于后面数字的pair数量:
e.g.
1 2 3 4 5 6 7 8 => inverse = 0
8 7 6 5 4 3 2 1 => inverse = 28

并非所有棋盘配置都可解:

e.g. (unsolvable)
1 2 3
4 5 6
8 7


问题:
1. (easy) 如果一个初始棋盘配置为可解的,那么其inverse必须为偶数
2. (medium)如果一个棋盘配置的inverse为偶数,则此配置可解
吹毛求疵挑毛病的话,你的第一个例子(我在引用里给加粗了)没写清楚,我应该是大概看懂题意了。
持仓抄底锁利,你钱你定
看牛观猪喊熊,自娱自乐
股市变幻莫测,不作不死
赌途曲折无常,吃枣药丸
meiyoumajia(没有马甲)
论坛元老
论坛元老
帖子互动: 56
帖子: 17343
注册时间: 2022年 7月 22日 15:16
来自: 宇宙

Re: 3x3的棋盘

帖子 meiyoumajia(没有马甲) »

对原题,也就是3x3,我时有具体的办法把8到3一个个放到最终的位置。如果要考虑有效办法/“算法”,对每个的做法有时会有些不同。

如果也要考虑更大的n,比如5x5,但不考虑算法/解决问题方法的有效程度,而只考虑数学问题,那就可以按下面的做法一步步退化/约化。

只考虑需要被处理的情况

对3x3:
如果要处理的数a不在最终安置位(8,7和6等被依次紧密放在最下方,从最右下角开始),
0。如果a在角上,把a-1或者以下一个放在中央,转整个外圈1次(7个操作,造成a离开了角),把中央数字填到空位
把a放在中央
把a放在a+1前(有时,也要做上面那种对外圈的针对“0。”情况的外圈反转/转,更多的转和部分转)
这样就能约化1步

此法可用于5x5等奇数边长的情况。从外圈做起,“中央”是3x3,复杂不少,要把a先放在中央3x3的外圈。在5x5的外圈完全定好最终位后,就是3x3定位的问题了。最后看它的开始两个数是否顺序/逆序。
上次由 meiyoumajia 在 2023年 2月 10日 12:46 修改。
meiyoumajia(没有马甲)
论坛元老
论坛元老
帖子互动: 56
帖子: 17343
注册时间: 2022年 7月 22日 15:16
来自: 宇宙

Re: 3x3的棋盘

帖子 meiyoumajia(没有马甲) »

这就是sliding tile jigsaw puzzle
最简单的是3x3
常见的还有4x4

我过去没玩过,但我家小孩在1年级上下那几年里玩过。在美国应该很受欢迎。
头像
TheMatrix
论坛支柱
论坛支柱
2024年度优秀版主
TheMatrix 的博客
帖子互动: 275
帖子: 13574
注册时间: 2022年 7月 26日 00:35

Re: 3x3的棋盘

帖子 TheMatrix »

meiyoumajia 写了: 2023年 2月 10日 12:05 这就是sliding tile jigsaw puzzle
最简单的是3x3
常见的还有4x4

我过去没玩过,但我家小孩在1年级上下那几年里玩过。在美国应该很受欢迎。
中国有个《华容道》游戏,好像也是这样的。
头像
(ヅ)楼主
论坛支柱
论坛支柱
帖子互动: 549
帖子: 11819
注册时间: 2022年 8月 21日 14:20

Re: 3x3的棋盘

帖子 (ヅ)楼主 »

meiyoumajia 写了: 2023年 2月 10日 01:29 横向移动相当于1x9序列不变
纵向下移a相当于只是1x9中abc变成了bca,而Inverse的奇偶性却不变
这个解释解释了必要性

充分性还得我继续看看你说的
头像
(ヅ)楼主
论坛支柱
论坛支柱
帖子互动: 549
帖子: 11819
注册时间: 2022年 8月 21日 14:20

Re: 3x3的棋盘

帖子 (ヅ)楼主 »

meiyoumajia 写了: 2023年 2月 10日 11:29 对原题,也就是3x3,我时有具体的办法把8到3一个个放到最终的位置。如果要考虑有效办法/“算法”,对每个的做法有时会有些不同。

如果也要考虑更大的n,比如5x5,但不考虑算法/解决问题方法的有效程度,而只考虑数学问题,那就可以按下面的做法一步步退化/约化。

只考虑需要被处理的情况

对3x3:
如果要处理的数a不在最终安置位(8,7和6等被依次紧密放在最下方,从最右下角开始),
0。如果a在角上,把a-1或者以下一个放在中央,转整个外圈1次(7个操作,造成a离开了角),把中央数字填到空位
把a放在中央
把a放在a+1前(有时,也要做上面那种对外圈的针对“0。”情况的外圈反转/转,更多的转和部分转)
这样就能约化1步

此法可用于5x5等奇数边长的情况。从外圈做起,“中央”是3x3,复杂不少,要把a先放在中央3x3的外圈。在5x5的外圈完全定好最终位后,就是3x3定位的问题了。最后看它的开始两个数是否顺序/逆序。

这个解释充分性略有问题

因为"能够把一个数字移到最终位置"不是可解的充分条件
头像
(ヅ)楼主
论坛支柱
论坛支柱
帖子互动: 549
帖子: 11819
注册时间: 2022年 8月 21日 14:20

Re: 3x3的棋盘

帖子 (ヅ)楼主 »

YWY 写了: 2023年 2月 10日 09:21 吹毛求疵挑毛病的话,你的第一个例子(我在引用里给加粗了)没写清楚,我应该是大概看懂题意了。
我都排好版了

哪儿知道发出来的不一样
meiyoumajia(没有马甲)
论坛元老
论坛元老
帖子互动: 56
帖子: 17343
注册时间: 2022年 7月 22日 15:16
来自: 宇宙

Re: 3x3的棋盘

帖子 meiyoumajia(没有马甲) »

(ヅ) 写了: 2023年 2月 10日 13:44 这个解释解释了必要性

充分性还得我继续看看你说的
充要性都反映在了最后那仅有的2种可能情况里。

无论3x3(还是奇数nx奇数n)最开始的分布状态是什么,我所有做的建设性方法(constructive method)最后只可能是那二者之一。(它们的区别是根本的。任何个可允许操作都没法让最后那个213所在分布变成12。。。8分布---两种种的另外一种。)
meiyoumajia(没有马甲)
论坛元老
论坛元老
帖子互动: 56
帖子: 17343
注册时间: 2022年 7月 22日 15:16
来自: 宇宙

Re: 3x3的棋盘

帖子 meiyoumajia(没有马甲) »

(ヅ) 写了: 2023年 2月 10日 13:46 这个解释充分性略有问题

因为"能够把一个数字移到最终位置"不是可解的充分条件
这是对8到3的建设性处理方法,都是可行的。(而且每一步都是可逆性的。)那些是方法,而不是什么任何条件。没对2和1做,我的约化到3就止住了。
做完3后,或是21345678,或是12345678,而这两个由于奇偶性不同,互相排斥,相互不能转换成对方。

其实是:
逐次对8到3中的每一个,没空位地逐次排位到3x3的最后还没有占据的最终位置。(比如做完8,7和6,那5就该排在第二行的最后。)每步都没有任何问题。
meiyoumajia(没有马甲)
论坛元老
论坛元老
帖子互动: 56
帖子: 17343
注册时间: 2022年 7月 22日 15:16
来自: 宇宙

Re: 3x3的棋盘

帖子 meiyoumajia(没有马甲) »

只转外圈方法对3x3行不通
比如23145678
但是可以保持678不变,把231转到最左上的2x2后。。。最后变成12345678

对5x5或以上应该没有问题
meiyoumajia(没有马甲)
论坛元老
论坛元老
帖子互动: 56
帖子: 17343
注册时间: 2022年 7月 22日 15:16
来自: 宇宙

Re: 3x3的棋盘

帖子 meiyoumajia(没有马甲) »

3的情况特殊,应该分别处理。昨天我做过,好像没有什么问题。你可验证。

8 和7很容易到位。做6时,会有等效于最后一行是a78的情况(a非6),把6转到7的正上方(也就是正中央),876带着a以外的逆时针走1步,中央放上剩下4位中的一个,876带上a逆时针沿着外圈走到最后一行是678。然后很快能定5。

对4最不容易定位的是(ab4c+空位)开始的分布
把b4移动1步,5b4移动1步,ac移动1步,4b5移1步,a一步,b一步。4就到位了。

而3在中间的情况所用方法,我在最近的一帖里表述过了
另外的情况中,只考虑最多步骤的情况;3在角上,(ab3+空),
ab3移动1次,543移动1次,ba移动一次,345移动1次,ba移动一次

只是我最后得出的是
(空位)ab
345
678

而不是
ab3
456
78(空位)



因此有一个大错误:完全做反了。

但是
把上面的所有步骤都反过来应该就可以了。
上下,左右,顺时对逆时针。。。

最后形式
123
456
ab(空位)
上次由 meiyoumajia 在 2023年 2月 10日 16:36 修改。
meiyoumajia(没有马甲)
论坛元老
论坛元老
帖子互动: 56
帖子: 17343
注册时间: 2022年 7月 22日 15:16
来自: 宇宙

Re: 3x3的棋盘

帖子 meiyoumajia(没有马甲) »

可能会有更简洁的思路/办法。不管怎么说,叙述起来很可能都会很啰嗦。
回复

回到 “STEM”