对对碰游戏规则说明:
一. 概述
游戏在 8 × 8 格子的游戏池中进行。每个格子中有一个图标。鼠标连续选中两个相邻的图标,它们的位置会互换,互换后如果横排或竖排有 3 个以上相同的图标,则可以消去该图标,并得分。
二. 基本规则
交换
玩家选中相邻(横、竖)的两个图标,则这两个图标的位置发生互换,如果互换成功则消去图标,否则取消位置交换。
消去
玩家选择两个图标进行位置互换,互换后如果横排或竖排有 3 个以上相同的图标,则消去这几个相同的图标,如果互换后没有可以消去的图标,则选中的两个图标换回原来的位置。消去后的空格由上面的图标掉下来补齐。每次消去图标玩家都能得到一定的分数。
连锁
玩家消去图标后,上面的图标掉下来补充空格。如果这时游戏池中有连续摆放(横、竖)的 3 个或 3 个以上相同的图标,则可以消去这些图标,这就是一次连锁。空格被新的图标填充,又可以进行下一次连锁。每次连锁会有加分。
重排
玩家已经不能消去任何图标时,将清空游戏池,用新的图标填充。
对对碰游戏算法分析:
分析一下,交换一般分为三种情况:
情况1:交换后,消除的头像是竖排的。
情况2:交换后,消除的头像是横排的。
情况3:交换后,消除的头像横竖排都存在
过程就是点击两个图样,先检查是否是同一图样,再检查是否在同一直线,再检查是否是一个折点,再是两个折点,如果都不是则返回无解,如果是,返回TRUE,记录折点,用直线连接折点和连接点并消除两个图样,这个点的值变为0
交换、消除、填补算法