杭電 2553 N皇后問題 (dfs)

2022-08-03 10:18:09 字數 597 閱讀 6604

在n*n的方格棋盤放置了n個皇后,使得它們不相互攻擊(即任意2個皇后不允許處在同一排,同一列,也不允許處在與棋盤邊框成45角的斜線上。 

你的任務是,對於給定的n,求出有多少種合法的放置方法。 

共有若干行,每行乙個正整數n≤10,表示棋盤和皇后的數量;如果n=0,表示結束。

共有若干行,每行乙個正整數,表示對應輸入行的皇后的不同放置數量。18

50 192

10n行n列n個皇后,每行有乙個皇后,先排第一行,找到合適的位置,用陣列記錄皇后在這一行的位置,標記整個列,其他的皇后都不能排在這一列,再判斷是否有對角線不合適的情況。

1 #include2 #include

3int n,key[11],map[11],ans,sum[11];4

void dfs(intx)5

1213

for(i = 1 ; i <= n ; i++)

1426}27

if(k == 1)28

33}3435}36

}37intmain()

3847

while(scanf("

%d",&n)&&n)

4851 }

杭電2553N皇后問題 dfs

n皇后問題 time limit 1000msmemory limit 32768kb64bit io format i64d i64u submit status description 在n n的方格棋盤放置了n個皇后,使得它們不相互攻擊 即任意2個皇后不允許處在同一排,同一列,也不允許處在與棋...

HDU2553 N皇后問題(DFS)

problem description 在n n的方格棋盤放置了n個皇后,使得它們不相互攻擊 即任意2個皇后不允許處在同一排,同一列,也不允許處在與棋盤邊框成45角的斜線上。你的任務是,對於給定的n,求出有多少種合法的放置方法。input 共有若干行,每行乙個正整數n 10,表示棋盤和皇后的數量 如...

HDU2553 N皇后問題(dfs)

description 在n n的方格棋盤放置了n個皇后,使得它們不相互攻擊 即任意2個皇后不允許處在同一排,同一列,也不允許處在與棋盤邊框成45角的斜線上。你的任務是,對於給定的n,求出有多少種合法的放置方法。input 共有若干行,每行乙個正整數n 10,表示棋盤和皇后的數量 如果n 0,表示結...