分治算法求解棋盘覆盖问题
生活随笔
收集整理的這篇文章主要介紹了
分治算法求解棋盘覆盖问题
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1. 問題描述:
在一個(gè)2k×2k 個(gè)方格組成的棋盤中,恰有一個(gè)方格與其它方格不同,稱該方格為一特殊方格,且稱該棋盤為一特殊棋盤。在棋盤覆蓋問題中,要用圖示的4種不同形態(tài)的L型骨牌覆蓋給定的特殊棋盤上除特殊方格以外的所有方格,且任何2個(gè)L型骨牌不得重疊覆蓋。
2. 題解:
劃分問題:將 2k?2k的棋盤劃分為 2k?1?2k?1這樣的子棋盤4塊。
遞歸求解:遞歸填充各個(gè)格子,填充分為四個(gè)情況,在下面會(huì)有解釋,遞歸出口為 k=0也就是子棋盤方格數(shù)為1。
遞歸填充的分為以下四種情況:
(1)如果黑方塊在左上子棋盤,則遞歸填充左上
總結(jié)
以上是生活随笔為你收集整理的分治算法求解棋盘覆盖问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: tikz 折线 箭头_[LaTeX 绘图
- 下一篇: CMM(Capability Matur