我已经检查了很多帖子,比如一个here,但是我没有在python中使用任何花哨的例程或函数 . 有没有高效,优雅的解决方案?

我开始使用更简单的3x3版本,如果向右滑动,我只是从右边开始检查空的瓷砖,然后检查相邻的瓷砖是否有相同的数字 . 我最终得到了8个不同的案例,一旦我发现它属于哪个案例,我就可以进行移动/组合 . 这个问题是我需要找出4x4和5x5的可能情况,问题变得非常复杂 . 重新使用为3x3编写的代码来处理4x4和5x5也很困难 .

我还尝试检查空的瓷砖,具有相同编号的瓷砖,从最右边的瓷砖开始(再次向右滑动),然后循环一次(对于更大尺寸的网格,可能需要循环两次以上?)这种方法适用于任何游戏大小的数量(3x3,4x4,5x5等),但它似乎有点低效,我怀疑有更好的方法来做到这一点 .

那么在游戏2048中有优雅的方式进行检查和合并吗?