CT Textbook Site
  

魔术托盘游戏

创建你的解决方案

问题: 一个正方形的魔术托盘四个角各有一个口袋,四个口袋开口一模一样。每个口袋里藏一个杯子。托盘正中还有一个绿色的灯。

口袋中的杯子可以朝上或朝下。如果四个杯子朝向一致那么灯会变红。

你的任务是通过执行一些步骤让灯变红。每一步允许进入一个或两个口袋检查并选择是否改变杯子的方向。 不幸的是,当你的手离开口袋时托盘会疯狂的旋转。 当转完之后你就没有办法知道你刚才检查的是哪几个袋子了。

你能创建一个算法来使灯变红,无论任何杯子的初始配置吗?

创建你自己的算法

输入下一步:  

                             


自我挑战

  • 尽量避免内部状态的重复。
  • 尝试使用最少的步骤,5步或者更少的步骤?

提示: 你可以将手伸入位于同一边的袋子, 或者对角线的袋子。应用计算思维: 从开始考虑问题, 也从结束考虑问题。