HDU 2553 N皇后問題

2021-07-04 08:51:32 字數 680 閱讀 3181

復健。一題經典的回溯法,要打表。

#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", ans[m]);

return

0;}

其實…是吧…

#include 

int a, r[10] = ;

int main()

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

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

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

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

185

0

1

9210

HDU 2553 N皇后問題

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

HDU 2553 N皇后問題

題目資訊 一種非常有用的二進位制優化方法 hdu2553n皇后問題 problem description 在n n的方格棋盤放置了n個皇后,使得它們不相互攻擊 即任意2個皇后不允許處在同一排,同一列,也不允許處在與棋盤邊框成45角的斜線上。你的任務是,對於給定的n,求出有多少種合法的放置方法。in...

HDU 2553 N皇后問題

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