百練 2574(八皇后DFS)

2021-06-27 18:16:58 字數 373 閱讀 2924

dfs經典問題,八皇后,經典中的經典,白書裡面有介紹,用到了回溯法,

規則是八個皇后不能相互攻擊,當兩個皇后在同一列或者同一行或者在同乙個對角線上時兩個皇后便會相互攻擊,

所以呢用到了乙個visit陣列來標記並用它來判斷是否在同一列或者在主對角線

#include#include#includeint tot=0;

int c[10],a[100];

int visit[3][20],ans[100][10];

void dfs(int cur)//cur表示行數,在這裡面是從1開始的

{ if(cur==9)

{ ++tot;//可以表示能放置成功八皇后的個數

for(int i=1;i

百練 2754 八皇后 (DFS)

2754 八皇后 總時間限制 1000ms 記憶體限制 65536kb 描述會下西洋棋的人都很清楚 皇后可以在橫 豎 斜線上不限步數地吃掉其他棋子。如何將8個皇后放在棋盤上 有8 8個方格 使它們誰也不能被吃掉!這就是著名的八皇后問題。對於某個滿足要求的8皇后的擺放方法,定義乙個皇后串a與之對應,即...

百練 2754 八皇后

總時間限制 1000ms 記憶體限制 65536kb 描述 會下西洋棋的人都很清楚 皇后可以在橫 豎 斜線上不限步數地吃掉其他棋子。如何將8個皇后放在棋盤上 有8 8個方格 使它們誰也不能被吃掉!這就是著名的八皇后問題。對於某個滿足要求的8皇后的擺放方法,定義乙個皇后串a與之對應,即a b 1b 2...

百練2754 八皇后

總時間限制 1000ms 記憶體限制 65536kb 描述 會下西洋棋的人都很清楚 皇后可以在橫 豎 斜線上不限步數地吃掉其他棋子。如何將8個皇后放在棋盤上 有8 8個方格 使它們誰也不能被吃掉!這就是著名的八皇后問題。對於某個滿足要求的8皇后的擺放方法,定義乙個皇后串a與之對應,即a b 1b2....