电子拼图思维逻辑机的破解思路

最近孩子去朋友家做客,喜欢上了一个玩具,网上找了好久都没找到,后来问朋友给了个链接,发现是上市不久的益智类游戏玩具。

先上个图

 

 开机之后有500关,难度越来越大,在朋友家玩的第3关,小孩子们都拼不上,然后我们家长大孩子们也一起参与😂,搞了几分钟才拼好,发现这个游戏真的不简单哟。

在回家的路上我就在想,这个游戏能不能通过写一段代码来解决呢。说干就干。干完了给孩子买这个玩具,然后搞不定了跑跑代码然后炫耀一番😂

然后就搞完了,代码跑了3个小时49分,也难怪,对于暴力尝试方式,大概有1.8亿以上的尝试次数。

然后优化算法:

1. 剪枝算法

2. 并发执行

程序执行减少到了2分钟,满意!

直接上第500关解法

 499关解法

说说暴力破解方法:

1. 棋盘有8 * 8,也就是一个二维数组,初始状态都是0
2. 填入目标性状,并且将对应位置 ➡️ 置为1。
3. 一共12个形状,除了填入的关卡形状块,还剩下9块,正方形1个方向,矩形2个方向,异形4个方向。
4. 每一个块都从二维数组开始遍历,但是没必要遍历64次(你们懂的)
5. 只要都放下,或者二维数组都是1就是结束条件。
6. 选择深度优先算法的朋友记得用stack作为数据结构。
7. 暴力的种类主要有剩余9个形状块的顺序的全排列,对于每一个形状块又有方向,也就是全组合。

最后,其实身为一个老父亲,还能够对代码有些许执着,算是一种情怀了!

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值