下载此文档

八皇后问题.doc


文档分类:生活休闲 | 页数:约3页 举报非法文档有奖
1/3
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/3 下载此文档
文档列表 文档介绍
// 八皇后问题
#include <iostream>
using namespace std;
#define N 4
#define M N-1
int a[N][N]={0} ;
void display()
{
int i ,j ;
for(i=0;i<N;i++)
for(j=0;j<N;j++)
{
if(a[i][j]==1)
cout<<"("<<i<<","<<j<<")"<<endl ;
}
}
int valid1(int m,int n) //判断行
{
int j ;
for(j=0;j<n;j++)
{
if(a[m][j]==1) return 0 ;
}
for(j=n+1;j<N;j++)
{
if(a[m][j]==1) return 0 ;
}
return 1 ;
}
int valid2(int m,int n) //判断列
{
int i ;
for(i=0 ; i<m ;i++)
{
if(a[i][n]==1) return 0 ;
}
for(i=m+1;i<N;i++)
{
if(a[i][n]==1) return 0;
}
return 1 ;
}
int valid3(int m,int n) //判断正对角线
{ int i;
for(i=-M;i<0;i++)
{
if((m-i)>=0&&(m-i)<=M&&(n-i)>=0&&(n-i)<=M)
{
if(a[m-i][n-i]==1) return 0 ;

}
}

for(i=1;i<N;i++)
{
if((m-i)>=0&&(m-i)<=M&&(n-i)>=0&&(n-i)<=M)
{
if(a[m-i][n-i]==1) return 0 ;
}
}
return 1;
}
int valid4(int m,int n) //判断负对角线
{ int i;
for(i=-M;i<0;i++)
{
if((m+i)>=0&&(m+i)<=M&&(n-i)>=0&&(n-i)<=M)
{
if(a[m+i][n-i]==1) return 0 ;

}
}

for(i=1;i<N;i++)

八皇后问题 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数3
  • 收藏数0 收藏
  • 顶次数0
  • 上传人mh900965
  • 文件大小33 KB
  • 时间2018-02-28
最近更新