7-6号N皇后问题(28分)
发布时间
阅读量:
阅读量
在一个N乘N的棋盘上安置N个皇后,确保它们之间不会发生相互攻击的情况(即任何两个皇后不能位于同一行、同一列,也不能处于与棋盘边缘形成45度角的对角线上)。
你的任务是,针对给定的数值N,计算出所有符合要求的摆放方式的数量。
输入格式:
输入数据由多行组成,每行包含一个不超过10的正整数N,用于表示棋盘的规模以及所放置皇后的数目;
输出格式:
每一行数据对应一个正整数,用以体现相应输入行中皇后不同摆放方式的数量
输入样例解析
以下是一组示例输入数据:
1
8
5
输出样例:
在此处展示对应的输出结果。例如:
1
92
10
AC代码:
#include<bits/stdc++.h>
using namespace std;
int a[15];//记录每行皇后的位置(即列号)
int n,sum;
void queen(int k)//第k行
{
if(k==n)//如果k=n,每行放完了
{
sum++;
return;
}
for(int i=0;i<n;i++)//假设放在第k行的第i列
{
全部评论 (0)
还没有任何评论哟~
