作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
如何生成所有 Tetrominos 的列表?或者,更一般地说,我如何生成限于多个单元格的多联骨牌子集?
最佳答案
有很多方法可以做到这一点。我发现一种行之有效的选择是递归地和更普遍地考虑它。特别是:
这为您提供了一种递归方式来列出所有可能的 n-ominos。不过,您需要小心,因为这会生成相同 n-ominos 的多次旋转和平移。您可以通过选择一些引用坐标系然后平移 n-omino 使其始终与该系统的轴齐平来解决此问题。完成这项工作后,您只需围绕轴旋转生成的 n-omino,然后将其平移回规范位置,即可生成所有旋转。
关于algorithm - 如何生成所有 Tetrominos 的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4778493/
如何生成所有 Tetrominos 的列表?或者,更一般地说,我如何生成限于多个单元格的多联骨牌子集? 最佳答案 有很多方法可以做到这一点。我发现一种行之有效的选择是递归地和更普遍地考虑它。特别是:
我正在编写一个程序,该程序需要快速检查连续的空间区域是否可由四联骨牌(任何类型、任何方向)填充。我的第一个尝试是简单地检查正方形的数量是否可以被 4 整除。但是,这样的情况仍然会出现: 如您所见,即使
我是一名优秀的程序员,十分优秀!