洛谷 P1219 八皇后

2021-08-21 19:48:34 字數 705 閱讀 4864

#include 

using namespace std;

struct point;

int n = 0; //要放的皇后的個數

int num = 0; //儲存已經放下的皇后的數量

int ans = 0; //儲存已經找到的答案種數

point q[14]; //儲存已經放下的皇后的位置

//判斷該位置能不能放皇后

int check(int

x, int

y) //與第i個皇后同列的

if(y == q[i].y)

//與第i個皇后同斜線的

if(x + y == q[i].x + q[i].y)

//與第i個皇后同反斜線的

if(x - y == q[i].x - q[i].y)

}return

1;

}void dfs(int

x) cout << endl;}}

return;

}//遍歷每一行的每乙個位置

for(int

y = 1; y

<= n; y++)

}}int main()

洛谷 P1219 八皇后

題目描述 檢查乙個如下的6 x 6的跳棋棋盤,有六個棋子被放置在棋盤上,使得每行 每列有且只有乙個,每條對角線 包括兩條主對角線的所有平行線 上至多有乙個棋子。上面的布局可以用序列2 4 6 1 3 5來描述,第i個數字表示在第i行的相應位置有乙個棋子,如下 行號 1 2 3 4 5 6 列號 2 ...

洛谷 P1219 八皇后

題目描述 檢查乙個如下的6 x 6的跳棋棋盤,有六個棋子被放置在棋盤上,使得每行 每列有且只有乙個,每條對角線 包括兩條主對角線的所有平行線 上至多有乙個棋子。上面的布局可以用序列2 4 6 1 3 5來描述,第i個數字表示在第i行的相應位置有乙個棋子,如下 行號 1 2 3 4 5 6 列號 2 ...

洛谷p1219 八皇后

題目描述 檢查乙個如下的6 x 6的跳棋棋盤,有六個棋子被放置在棋盤上,使得每行 每列有且只有乙個,每條對角線 包括兩條主對角線的所有平行線 上至多有乙個棋子。上面的布局可以用序列2 4 6 1 3 5來描述,第i個數字表示在第i行的相應位置有乙個棋子,如下 行號 1 2 3 4 5 6 列號 2 ...