分治 棋盤覆蓋 超級好理解的一種寫法!

2021-06-30 16:24:02 字數 554 閱讀 6689

#include//using namespace std;

int tile=1;//編號

int board[100][100];//棋盤

/*tr--當前棋盤左上角的行號

* tc--當前棋盤左上角的列號

* dr--當前特殊方格所在的行號

* dc--當前特殊方格所在的列號

* size:當前棋盤的:2^k */

//就是遞迴乙個方塊中有乙個特殊方塊的狀態,沒有特殊方塊,要創造方塊,並且這個創造的就是本輪確定的編號

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

} int main()

printf("\n");

} return 0;

}

思考一種好的架構(十二)

程式集掃瞄庫 referencescan 是什麼?服務間會有各種相互依賴和引用,這勢必會造成爭奪configureservices,到最後牽一髮而動全身。於是很自然的出現了它來解決這個問題,為什麼?為了解決服務爭奪configureservices註冊順序而誕生的庫,他就是各個服務的帶頭人,一定是它...

思考一種好的架構(十二)

事件溯源 tracingsource 資料庫事件溯源實體 table name tracingsource public class tracingsourceentity 執行時間 public datetime executetimer 執行sql public string executesq...

思考一種好的架構(九)

中介者 mediator 為了解除服務間互相引用的問題,單獨劃分出來的乙個服務 它的好處時顯而易見的,服務之間的引用將會變的清晰明了 我只在業務服務庫上使用它,普通服務和基礎設施服務還是自己管自己的,沒有使用mediatr 因為我覺得它對於net core提供的中介者功能並不是很好的用,微軟自帶的i...