做一个矩形类,然后模拟放的过程,不过从最后放的矩形开始反序考虑

比如题目给出的样例,一开始放入颜色4的矩形,得到4与1相交部分,然后无论前面的矩形怎么放这一部分的颜色都是4,此时把其余颜色为1的部分分解为3个小矩形

然后再考虑放下颜色3的矩形,考虑剩余的白色矩形(颜色1),把每一个与3相交的做同样处理,即先把相交部分涂成颜色3,把这个白色矩形的其它部分分解为多个小矩形

直到放入第一个矩形为止

代码用一个RectangleList类来存放所有的白色矩形(由“白纸”分解而得)

Code
posted on 2009-01-09 13:47  刘永辉  阅读(541)  评论(0编辑  收藏  举报