在n*n的方格棋盤放置了n個皇后,使得它們不相互攻擊(即任意2個皇后不允許處在同一排,同一列,也不允許處在與棋盤邊框成45角的斜線上。
你的任務是,對於給定的n,求出有多少種合法的放置方法。
共有若干行,每行乙個正整數n≤10,表示棋盤和皇后的數量;如果n=0,表示結束。
共有若干行,每行乙個正整數,表示對應輸入行的皇后的不同放置數量。18
50 192
10n行n列n個皇后,每行有乙個皇后,先排第一行,找到合適的位置,用陣列記錄皇后在這一行的位置,標記整個列,其他的皇后都不能排在這一列,再判斷是否有對角線不合適的情況。
1 #include2 #include3int 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,表示結...