weixin_35953022 2016-08-30 08:05 采纳率: 0%
浏览 1059

关于八皇后问题,各位来帮我看看哪里错了

这是我编的关于八皇后问题,输入几就得出该类皇后的结果。但现实结果为0,给为能帮我看看哪里出错了吗
#ifndef QUEEN
#define QUEEN
#include
#include
using std::vector;
class Queen
{
public:
Queen(int x);
int count(int x);

private:
vector queen;
int size;
bool judge(int x);
//void print(int i);
};

Queen::Queen(int x)
{
for (int i = 0;i < size;i++)
queen.push_back(0);
}
bool Queen::judge(int x)
{
if (x == 0)
return true;
for (int i = 0;i < size - 1;i++)
if (queen[x] == queen[i] || queen[x] + i == queen[i] + x || queen[x] + x == queen[i] + i)
return false;
return true;
}

int Queen::count(int x)
{
int n = 0;
for (int i = x;i < size;i++)
for (int j = 0;j < size;j++)
{
queen[i] = j;
if (judge(i))
{
//print(i);
if (i == size - 1)
return 1;
else
n += count(i + 1);
}
}
return n;

}

#include
#include"queen.h"

int main()
{
using namespace std;
cout << "输入皇后大小:";
int n;
cin >> n;
while (n != 0)
{
Queen q(n);
int n = q.count(0);
cout << "有" << n << "种解法.\n";
cout << "输入皇后大小:";
cin >> n;
}
}

  • 写回答

1条回答 默认 最新

  • 雨落文染 2016-08-30 08:04
    关注

    因为皇后叫马蓉 所以出不来 没办法 重新写一个吧

    评论

报告相同问题?

悬赏问题

  • ¥15 python网络流自动生成系统 医学领域
  • ¥15 代码的修改,添加和运行完善
  • ¥15 krpano-场景分组和自定义地图分组
  • ¥15 lammps Gpu加速出错
  • ¥15 关于PLUS模型中kapaa值的问题
  • ¥15 关于博途V17进行仿真时无法建立连接问题
  • ¥15 机器学习教材中的例题询问
  • ¥15 求.net core 几款免费的pdf编辑器
  • ¥15 为什么安装HCL 和virtualbox之后没有找到VirtualBoxHost-OnlyNetWork?
  • ¥15 C# P/Invoke的效率问题