分享去年用MATLAB写的一个puzzle
本帖最后由 误入魔道 于 2020-10-31 11:26 编辑关于这个puzzle
记得原puzzle的实现是很多年前,百度贴吧实现过一个网页版,同时还制作了4×4版本,一直挺喜欢。但是原帖和原作者找不到了,作者给出的链接也很早就失效了。
这个用MATLAB是一个一年多前参加各种建模比赛时摸鱼写下的,也并不是第一次实现这个puzzle,大概五年前高中的信息技术课老师用一个叫编程猫(应该是类似scratch的东西)的少儿编程教学工具让大家学习编程。最后提交的编程作业就是这个,这个网站用户的数据也早就被删除掉了,域名经过转变,现在用户数据依旧丢失。
由于是MATLAB写的,可能大家没办法玩到了,也有考虑有时间用别的工具重制一个。程序区也很冷淡,这次分享也是做一个记录,或许更适合在闲聊区,如果有学工科安装了matlab可以尝试一下:lol。
这个puzzle不仅仅限于3×3和4×4,而是直接实现了1到n阶以及不等阶(内在逻辑是相同的),还设定了几种内置的规则可以选择(如果熟悉MATLAB,自己修改属于自己的规则也不困难),
规则和功能
基本规则:点击某一个方块自身及相邻的方块数值加一,到达最大值(设定的是9)循环回最小值(1),最小值的索引不是0而是1对应了Matlab的索引下标是1起始。
扩展的规则:新规则1.被点击的方块数值不发生变化,相邻方块数值加1。
新规则2.被点击的方块所在的行列+1
puzzle展示
复原
二阶
不等阶
高阶
新规则
规则1
规则2
下载:
关于这个puzzle的一些问题
开始的打乱的规则随机生成一个包含1到9的n×n的矩阵,实际复原的过程中发现任意状态都是可以达到一个复原态的,后来加入了新的规则之后,就需要考虑能否遍历所有的状态,所以后来将打乱改成了随机打乱。对这方面的问题不太熟悉,还望对理论了解的朋友指教。
一个扩展的关灯游戏啊,挺好玩。schuma写过一个几何体版的关灯游戏,可以参考一下:http://bbs.mf8-china.com/forum.php?mod=viewthread&tid=102204 redcarrot 发表于 2020-11-1 16:19 static/image/common/back.gif
一个扩展的关灯游戏啊,挺好玩。schuma写过一个几何体版的关灯游戏,可以参考一下:http://bbs.mf8-china.c ...
我写的本身可以改变循环的次数,改到2就等于平面上的关灯游戏了。也有过做空间版本的,类似做成分子结构。
几何体这个挺好玩,估计这几天要沉迷了。 很好玩啊。试试 平面也可以变成立体的, 可以试试改变边界条件, 加入周期性边界条件就变成一个Torus了 很不错的创意,关灯游戏的扩展版。以前看到一些变种,可以自定义当前块影响的矩阵,楼主可以考虑下。 用MATLAB写的!很有意思:lol我最近正好常用mathematica,我来试试能不能移植过去;P
页:
[1]