构造(无验证).cpp
来自「八皇后问题全解 有回溯法(函数」· C++ 代码 · 共 56 行
CPP
56 行
#include <iostream>
using namespace std;
void nqueen(int n)
{
int k=n%6;
if(k!=2 && k!=3) {
int i;
for(i=2;i<=n;i+=2)
cout<<i<<" ";
for(i=1;i<=n;i+=2)
cout<<i<<" ";
cout<<endl;
return;
}
k=n/2;
if(k%2==0) {
int i;
for(i=k;i<=n;i+=2)
cout<<i<<" ";
for(i=2;i<=k-2;i+=2)
cout<<i<<" ";
for(i=k+3;i<=n-1;i+=2)
cout<<i<<" ";
for(i=1;i<=k+1;i+=2)
cout<<i<<" ";
if(n%2==1)
cout<<n;
}
else {
int i;
for(i=k;i<=n-1;i+=2)
cout<<i<<" ";
for(i=1;i<=k-2;i+=2)
cout<<i<<" ";
for(i=k+3;i<=n;i+=2)
cout<<i<<" ";
for(i=2;i<=k+1;i+=2)
cout<<i<<" ";
if(n%2==1)
cout<<n;
}
cout<<endl;
}
void main()
{
int n;
do
{
cout<<"请输入皇后的个数:"<<endl;
cin>>n;
nqueen(n);
}while(n > 4);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?