在n*n的方格棋盤放置了n個皇后,使得它們不相互攻擊(即任意2個皇后不允許處在同一排,同一列,也不允許處在與棋盤邊框成45角的斜線上。
你的任務是,對於給定的n,求出有多少種合法的放置方法。
input共有若干行,每行乙個正整數n≤10,表示棋盤和皇后的數量;如果n=0,表示結束。output共有若干行,每行乙個正整數,表示對應輸入行的皇后的不同放置數量。sample input
185sample output0
19210
#include #include#include
#include
#include
using
namespace
std;
#define ll long long
int n, position[18], line[18
], sum, r;
bool compare(int
miao)
int queen(int
t)
return
sum;
}int
main()
while(~scanf("
%d", &n) &&n)
return0;
}
HDU 2553 N皇后問題
題目 problem description 在n n的方格棋盤放置了n個皇后,使得它們不相互攻擊 即任意2個皇后不允許處在同一排,同一列,也不允許處在與棋盤邊框成45角的斜線上。你的任務是,對於給定的n,求出有多少種合法的放置方法。input 共有若干行,每行乙個正整數n 10,表示棋盤和皇后的數...
HDU 2553 N皇后問題
復健。一題經典的回溯法,要打表。include define max n 11 int n,res int c max n ans max n void dfs int cur if flag dfs cur 1 int main int m while scanf d m m printf d n...
HDU 2553 N皇后問題
題目資訊 一種非常有用的二進位制優化方法 hdu2553n皇后問題 problem description 在n n的方格棋盤放置了n個皇后,使得它們不相互攻擊 即任意2個皇后不允許處在同一排,同一列,也不允許處在與棋盤邊框成45角的斜線上。你的任務是,對於給定的n,求出有多少種合法的放置方法。in...