暑假集訓每日一題0717(DFS)

2022-03-06 20:02:40 字數 771 閱讀 3200

這題是zoj 1008那題。

給你n*n個方塊,每個方塊被對角線劃分為4部分,每一部分裡面有乙個數字,問能否將方塊拼成乙個邊長為n的大方塊,使得相鄰方塊的相鄰數字相同。

用dfs搜尋,需要剪枝,同一層中相同方塊只搜尋一次。

view code

#include #include 

#define n 26

#define t 0

#define r 1

#define b 2

#define l 3

int x[n][4

],top;

intn,id[n],num[n];

bool

success;

int left(int

k)int top(int

k)void dfs(int

cnt)

for(i=0;i)

}int

main()

num[j]++;

if(j==top)

}success=false

; dfs(0);

if(kase) puts(""

); printf(

"game %d:

",++kase);

if(success) puts("

possible");

else puts("

impossible");

}return0;

}

暑假集訓每日一題0712 (線段樹)

維護乙個只有0和1的整數序列,支援以下操作 1 x y v 將區間 x,y 之間的所有整數都變為v v為0或1 2 x y 將區間 x,y 之間所有的1變為0,所有的0變為1 3 x y 查詢區間 x,y 內的1的個數。線段數練習 每段儲存3個關鍵資訊 和,修改標記,反轉標記。需注意的幾點 在更新某...

暑假集訓每日一題0711 (線段樹)

維護乙個整數序列,支援以下操作 1 x v 將第x個整數的值修改為v 2 x y 查詢區間 x,y 之間的最小值 3 x y 查詢區間 x,y 之間的最大值 4 x y 查詢區間 x,y 內的整數和。資料保證查詢結果均在int範圍之內,但中間結果是否可能溢位呢?我交的程式沒考慮這個也ac了。通過這題...

暑假集訓每日一題0727 (網路流)

現在小朋友們最喜歡的 喜羊羊與灰太狼 話說灰太狼抓羊不到,但抓兔子還是比較在行的,而且現在的兔子還比較笨,它們只有兩個窩,現在你做為狼王,面對下面這樣乙個網格的地形 左上角點為 1,1 右下角點為 n,m 上圖中n 4,m 5 有以下三種型別的道路 1 x,y x 1,y 2 x,y x,y 1 3...