假设72块,假设不考虑不能放置的情形,不考虑有重复块,价值最后拼成8×9。
先放第一块,可以放置的块数为72种,每块可以旋转方向4次,所以可能出现72×4的放置。
第二块,可以放置71种,旋转4次,71×4。
。。。。。。。。。。。。。
一直到最后一块,1×4。
最后可能的情况一共有这么多种:72×4×71×4×70×4×。。。。。。。。。。。1×4
=4的72次方×(727170......1)
的确很恐怖。。。。
如果考虑有些块是相同的,那么出现一个相同块,就可以少乘以72;出现2个,就少乘以72×71。
如果使用递归来做,挨个防止游戏块,遇到无法放置的情况就回退,那么也可以少处理很多情况。
但是需要尝试的次数依然是惊人的。
对于3×3的情况,4的9次方×9×8×。。。。×1,的确可以,稍大一点,计算就几何积数增长了。
也许有更好的优化的算法才行。