前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >关于火柴棒数字游戏的方案设计思考

关于火柴棒数字游戏的方案设计思考

作者头像
jeanron100
发布2023-09-04 17:30:55
2810
发布2023-09-04 17:30:55
举报

同样,这是一个耽搁了数月之久的事情,关于火柴棒数字游戏,在奥数题中经常能刷到,还是蛮考验思维的。 孩子很喜欢这种题目,我也觉得有意思,所以就花了一些时间琢磨了下。

比如 拿走一根火柴棒,使得下面的等式成立

或者是我在去年发的一道题目,一道移动火柴的题目,要不要试一下

这种题目难就难在,可以同时有多种解法

带着好奇心,我做了下分析,怎么能够写程序生成这样的题目,我没有着急开始写代码,而是做了一些分析。

比如数字所对应的火柴棒数量差异还是很大的。

按照火柴棒数量,基本上能够锁定几类常见的题目:

1)挪动一根火柴棒(平移)

2)添加一根火柴棒(添加)

3)减少一根火柴棒(减少)

接下来就是有点烧脑的重点了, 我整理了下。

平移有五种情况,大体能够覆盖常见的场景:

1)第一种是当前的数字在火柴棒不变的情况下自我调整,火柴棒总数不变

2<->3, 5<->3, 0<->6, 0<->9,6<->9

比如2<->3,意思是2可以平移转换成3,3也可以平移转换成2,类似于这样,其他的描述方式是相似的,就不一一贴图了。

2)第二种情况是一个数字增加一根火柴棒,同时另外一个数字减少一根火柴棒,火柴棒总数不变

1->7,3->9,5->6,5->9,0->8,6->8,9->8,0->10

3)第三种情况是一个数字减少一根火柴棒,同时另外一个数字增加一根火柴棒,火柴棒总数不变

7->1,9->3,8->0,8->6,8->9,10->0

4)第四种情况是将 - 调整为 +,另外一个数字减少一根火柴,火柴棒总数不变

7->1,9->3,8->0,8->6,8->9

5)第五种情况是将+ 调整为 -,另外一个数字增加一根火柴,火柴棒总数不变

1->7,3->9,5->6,5->9,0->8,6->8,9->8

添加一根火柴

1)第一种情况是一个数字增加一根火柴棒,同时另外一个数字减少一根火柴棒,火柴棒总数不变

1->7,3->9,5->6,5->9,0->8,6->8,9->8

2)第二种是将 - 调整为 +,使得等式成立

减少一根火柴

1)第一种情况是一个数字减少一根火柴棒,同时另外一个数字增加一根火柴棒,火柴棒总数不变

7->1,9->3,8->0,8->6,8->9

2)第二种情况是将 + 调整为 -,使得等式成立

整体思路

1)先输出正常的结果

2)在正常的结果基础上调整,输出修改过的结果

例如移动一根火柴的场景,先根据等式的数字来判断五种场景中,根据数字哪种更合适,如果都不合适,则调整符号

以一个看起来极度简单的算式为例

0+9=9

很快就能衍生出十多个个算式:

比如平移一根火柴就有这么多:

9+9=9, 6+9=9, 0+0=9, 0+6=9, 0+9=6, 0+9=0

8+3=9,10+3=9,0+3=8,0+5=8,0+8=5

0-8=9,0-9=8,10-9=9

后续完善代码之后可以把代码附上,先缓缓。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2023-07-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 杨建荣的学习笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档