【发布时间】:2013-03-07 08:16:16
【问题描述】:
假设我有一个 2D int 数组..
int[][] board = new int[10][20];
public void initBoard()
{
for(int r = 0; r < 10; r++)
for(int c = 0; c < 20; c++)
board[r][c] = 0;
}
0 表示没有一块 棋子用1-7表示;
1 - Z 形
2 - S 形
3 - 线条形状
4 - T 形
5 - 盒子形状
6 - L 形
7 - 倒 L 形
用随机形状填充整个数组并且没有剩余空间的最佳方法是什么。
注意:我的游戏正在运行,我只是在尝试让它适应不同的东西,同时仍在使用俄罗斯方块游戏
【问题讨论】:
-
定义“最佳”。使用最少的块?这可能包括主要/专门使用具有最多块的形状。有很多很多的选择,一次填2-3行就好了,应该很容易。
-
最简单/最有效的。没有区块数量要求。我宁愿它每次都使用等量(尽可能多)的每个块。
-
最简单的就是用盒子形状或者线条形状来填充不是吗?
标签: java arrays 2d fill tetris