提供一种比较方便的思路
在玩这个游戏的时候,如果把注意力放在每个齿轮具体的转动过程上,试图想明白每一步操作的结果,那么玩到100关左右(4*4规模)的时候可能就会感到压力比较大了。
事实上,我们没必要关注每个齿轮具体是怎么转的,而只需要关注每个齿轮转动的次数。下面举一个例子来解释这种思路:
这是游戏中的111关,我们先来看一下每个齿轮转多少次能转到目标位置。以左上角的齿轮为例,现在左上角的齿轮朝下,目标图形中左上角的齿轮朝右。而它是逆时针旋转的,这说明它只需要转1次就可以到达目标位置。同理,我把每个齿轮需要转的次数标在了下面的图中,没标数字的表示不需要转。
还是以左上的齿轮为例,它右边的齿轮转2次的过程中会指到它1次,它下面的齿轮在转2次的过程中不会指到它。也就是说,在整个过程中,左上的齿轮会被别其他齿轮指1次。同理,我把每个齿轮会被其他齿轮指到的次数标在了下面的图中。
如果某个齿轮需要转的次数(红色数字)和被其他齿轮指到的次数(蓝色数字)是一样的,就说明这个齿轮不需要被点。如果这两个数不一样,比如第二行第一个,它需要转2次,但是只被指了1次,就说明它需要被点1次。同理可以看出,这一关需要被点的齿轮是下图中的这4个,并且都只需要点1次。
到这里你可能还有一点疑问,这4个齿轮要按什么顺序点?事实上,什么顺序都可以,点的顺序不会影响结果。
在后面更复杂的一些关中,有的齿轮乍一看不需要转就已经在目标位置了,但实际上是需要转4次,有一些乍一看转1次就行,实际上需要转5次。要结合具体情况来判断需要转几次。