Board[tr+s-1][tc+s-1]=tBoard是什么函数,也没见到~
能不能把整个程序的语言放上来呢?
另外,我想说,用L型覆盖的话,每次四等分后,不一定能覆盖掉其中一块哦,你的L型是什么样的呢?3-1还是2-1?如果是3-1,那意味着边长是4的倍数才能简单覆盖哦~
看得我眼晕...目前看到一个小问题
//覆盖左上角棋盘
if(dr<tr+s &&dc<tc+s)
ChessBoard(tr,tc,dr,dc,s)
else{//此棋盘中无特殊方格,用T号L型骨牌覆盖右下角
Board[tr+s-1][tc+s-1]=t
//覆盖其余方格 <------------------------------------下面那句话有点问题啊,你以左上角最右下角的那个格子为特殊格再次chessboard了
ChessBoard(tr,tc,tr+s-1,tc+s-1,s)}
棋盘覆盖:用4种不同形态的L型骨牌, 覆盖给定特殊棋盘上除特殊方格以外的所有方格,且任何2个不得重叠。按照规则,我们很容易知道,在2^k*2^k的棋盘覆盖中,用到的L型骨盘数恰为(4^k-1)/3,即(所有方格个数-特殊方格个数)/3。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)