棋盤覆蓋問題

2021-07-10 15:13:51 字數 1195 閱讀 4826

//棋盤覆蓋問題

/*(tr,tc)是棋盤左上角的方格座標

(dr,dc)是特殊方格所在的座標

size是棋盤的行數和列數

*/ #includeusing namespace std;

int board[1025][1025];

static int tile = 1;

void chessboard(int tr,int tc,int dr,int dc,int size)

//覆蓋左下角子棋盤

if(dr>=tr+s && dc=tr+s && dc>=tc+s)//特殊方格在此棋盤中

chessboard(tr+s,tc+s,dr,dc,s);

else //此棋盤中無特殊方格,用t號l型骨牌覆蓋左上角 }

int main()

{ int i,j;

int k;

while(cin>>k)

{ int size = 1<>x>>y;

board[x][y]=0;

chessboard(0, 0, x, y, size);

for(i=0; i

棋盤覆蓋問題

source code include include include using namespace std const int n 1024 int board n n count void cover int sx,int sy,int cx,int cy,int size,int cx1,i...

棋盤覆蓋問題

問題 在乙個2k 2k k 0 個方格組成的棋盤中,恰有乙個方格與其他方格不同,稱該方格為特殊方格。顯然,特殊方格在棋盤中可能出現的位置有4k種,因而有4k種不同的棋盤,圖4.10 a 所示是k 2時16種棋盤中的乙個。棋盤覆蓋問題 chess cover problem 要求用圖4.10 b 所示...

棋盤覆蓋問題

棋盤覆蓋問題 time limit 1000ms,special time limit 2500ms,memory limit 32768kb total submit users 103,accepted users 40 problem 10432 no special judgement pr...