日历
网志分类
· 所有网志 (91)
· 程序员面试题收集 (11)
· 算法 (25)
· Paper (3)
· c++,java (37)
· bbs search project (2)
· career (7)
· 设计模式 (0)
· 未分类 (6)
站内搜索
友情链接
· 我的歪酷 非非共享界
· 涛声依旧blog,也有很多题收集
· jammy 生活就是映像
· Aleph mm's
· onebird(一鸣)
· lucene.com.cn
· Goolge黑板报--没事看看
· jjing

订阅 RSS

0034092

歪酷博客

kua's

海明威说--
“这个世界是美好的,值得我们为之奋斗”

我相信后半句...

                                                             kuapig@gmail.com


« 上一篇: Instant Consistency Checking for the UML 下一篇: 分支限界法 »
kua @ 2007-04-10 11:18

class nQueen
{
public:
 nQueen():n(0){};
 nQueen(int num);
 void outputChess();
 void getChess(int k);

private:
 int n;
 int *x;
};

nQueen::nQueen(int num)
{
 n = num;
 x = new int[n];
 for(int i=0; i < n ;i++) x[i]=-1;
}
void nQueen::outputChess()
{
 cout<<"get a chess"<<endl;
 for(int i=0;i<n;i++)
 {
  for(int j=0;j<n;j++)
  {
   if (x[i]==j) cout<<"1 ";
   else cout<<"0 ";
  }
  cout<<endl;
 }
}
void  nQueen::getChess(int k) //row k-1
{
 if (k-1==n)
 {
  outputChess();
  return ;
 }
 int t;
 for(int i=0;i<n;i++)  //col i
 {
  for(t=0;t<k-1;t++) //check if(k-1,i) conflicts with (t,x[t]) ,where 0<=t<k-1
  {
   if(x[t]==i)
    break;  //same col
   if(x[t]-i==t-k+1||x[t]-i==k-1-t)
    break;
  }
  if(t!=k-1) continue;
  else
  {
   x[k-1]=i;
   getChess(k+1);
  }
 
 }
 return;
}





评论 / 个人网页 / 扔小纸条
* 昵称

已经注册过? 请登录

新用户请先注册 以便能显示头像及追踪评论回复

Email
网址
* 评论
表情
 


 

分类小组论坛
杂谈 , 娱乐、八卦 , 文学、艺术 , 体育 , 旅游、同城 , 象牙塔 , 情感 , 时尚、生活 , 星座 , 科技

请注意遵守中华人民共和国法律法规, 如威胁到本站生存, 将依法向有关部门报告, 同时本站的相关记录可能成为对您不利的证据.

相关法律法规
全国人大常委会关于维护互联网安全的决定
中华人民共和国计算机信息系统安全保护条例
中华人民共和国计算机信息网络国际联网管理暂行规定
计算机信息网络国际联网安全保护管理办法
计算机信息系统国际联网保密管理规定