G N皇后問題

2021-08-22 06:14:40 字數 702 閱讀 6873

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

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

input

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

output

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

sample input

185

0

sample output

1

9210

#include #define true 1

#define false 0

#define maxqueen 10

#define abs(x) ((x>0)?(x):-(x))

int queen[maxqueen];

int total_solution;

int attack(int row, int col)

return atk;

}void place(int q, int n)

i++;

}}int main(void)

while(scanf("%d", &n) != eof)

return 0;

}

問題 I n皇后問題

在n n 格的棋盤上放置彼此不受攻擊的n 個皇后。按照西洋棋的規則,皇后可以攻擊與之處在同一行或同一列或同一斜線上的棋子。n後問題等價於在n n格的棋盤上放置n個皇后,任何2 個皇后不放在同一行或同一列或同一斜線上。設計乙個解n 後問題的佇列式分支限界法,計算在n n個方格上放置彼此不受攻擊的n個皇...

GN快速入門指南

新增乙個新的構建引數 不知道發生了什麼事 你只需要從命令列執行gn。在depot tools目錄有乙個同名指令碼gn.py。這個指令碼將在包含當前目錄的源 樹中找到二進位制檔案並執行它。在gyp中,系統會為您生成debug和release建立目錄並相應地進行配置。gn不這樣做。相反,你可以使用你想要...

GN使用筆記

之前介紹過gyp,它是google早期用來維護chromium專案的meta build system,gn則是用來替代gyp的工具,目前chromium及相關的開源專案都遷移到基於gn來管理。並且gn是基於c 編寫,效率上比基於python的gyp快了近20倍。參考 git clone 雖然dep...