20皇后有多少解
来源:互联网 发布:创业app软件 编辑:程序博客网 时间:2024/04/28 07:18
利用八皇后的C语言实现一文中实现的方法计算各种不同的数目的皇后有多少种解,我最后得到了以下4个结果
8皇后:
耗时:0
结果:92
总共步数:3, 920
10皇后:
耗时:31
结果:724
总共步数:69, 618
12皇后:
耗时:750
结果:14200
总共步数:1, 683, 964
15皇后:
耗时:217828
结果:2, 279, 184
总共步数:337, 699, 759
这里耗时是以毫秒计算(将所有的打印结果去掉,只计算运行求解的时间,即程序第80行去掉),结果是指解的数目,总共步数是指回溯算法前进后退的步数。
可以看出15皇后耗时已经达到3.5分钟,而20皇后会有多少种解呢?
我是用这个程序已经运行了3个多小时,没有得到结果,虽然说内存占用保持在60K,但是不知道要等到何年何月。我想到一个方法就是因为这个东西是对成的,我逐个计算从0到9的解,相加之后乘以2应该就是20皇后的解。但是,我还是想等现在这个通解方法计算完成。
另外,我同学写了一个C++的方法,利用了递归,虽然把保存结果的方法去掉了,内存占用仍然逐步升高,我觉得15皇后都没法运行出来,而且还得考虑递归导致的堆栈溢出问题。在保留结果保存的功能的时候,内存占用迅速的达到了700M,没有得到结果,我给关了。
根据http://algo2008.csie.chu.edu.tw/file/f31.pdf(2008年12月24日)的论文可见,上诉已得的结果都是正确的,而20皇后的解数目为:39, 029, 188, 884 所以我怀疑我得电脑是否能够承受这个计算量。当然,正如上边我所提到的换一个思路计算20皇后,新的算法需要被研究出来以加快或者更好的计算结果。同时论文作者指出他们计算更大的数目皇后的时候都使用了网格计算,因此不是我的一个小本能够搞定的。简略的按照倍数来看,15皇后是3.5分钟,那么20皇后就应改达到1000多个小时。
另外,http://www.research.att.com/~njas/sequences/上边有各种数目的皇后的解(已经解出来的)。
8皇后:
耗时:0
结果:92
总共步数:3, 920
10皇后:
耗时:31
结果:724
总共步数:69, 618
12皇后:
耗时:750
结果:14200
总共步数:1, 683, 964
15皇后:
耗时:217828
结果:2, 279, 184
总共步数:337, 699, 759
这里耗时是以毫秒计算(将所有的打印结果去掉,只计算运行求解的时间,即程序第80行去掉),结果是指解的数目,总共步数是指回溯算法前进后退的步数。
可以看出15皇后耗时已经达到3.5分钟,而20皇后会有多少种解呢?
我是用这个程序已经运行了3个多小时,没有得到结果,虽然说内存占用保持在60K,但是不知道要等到何年何月。我想到一个方法就是因为这个东西是对成的,我逐个计算从0到9的解,相加之后乘以2应该就是20皇后的解。但是,我还是想等现在这个通解方法计算完成。
另外,我同学写了一个C++的方法,利用了递归,虽然把保存结果的方法去掉了,内存占用仍然逐步升高,我觉得15皇后都没法运行出来,而且还得考虑递归导致的堆栈溢出问题。在保留结果保存的功能的时候,内存占用迅速的达到了700M,没有得到结果,我给关了。
根据http://algo2008.csie.chu.edu.tw/file/f31.pdf(2008年12月24日)的论文可见,上诉已得的结果都是正确的,而20皇后的解数目为:39, 029, 188, 884 所以我怀疑我得电脑是否能够承受这个计算量。当然,正如上边我所提到的换一个思路计算20皇后,新的算法需要被研究出来以加快或者更好的计算结果。同时论文作者指出他们计算更大的数目皇后的时候都使用了网格计算,因此不是我的一个小本能够搞定的。简略的按照倍数来看,15皇后是3.5分钟,那么20皇后就应改达到1000多个小时。
另外,http://www.research.att.com/~njas/sequences/上边有各种数目的皇后的解(已经解出来的)。
- 20皇后有多少解
- 20皇后有多少解
- 国际象棋中用8个皇后摆在不同的格而且互相不牵制有多少种不同的摆法
- 20几岁,你的存款有多少?
- 八皇后问题,C语言实现,求出第一行第一列有皇后的解
- 包容有多少,拥有就有多少;
- 有多少爱 就有多少原谅
- 一桶石油有多少
- 微软秘密有多少
- 思念有多少重量
- 有多少值得做
- 不知有多少泡泡?
- 有多少的梦想
- 每天有多少思念
- 本月有多少天?
- Query插件有多少
- 本月有多少天
- 铝合金门窗市场占有率有多少
- 大家以后不要说百毒的坏话了?
- shell导入apache日志到mysql
- 戴尔关注XML和SOA专业客户
- 定时器
- ORACLE的锁机制
- 20皇后有多少解
- 集体过冬,Hyper-V为企业省钱
- SOA与SaaS两者将在何处相遇
- 从王石到黄光裕
- 怎样来学习Symbian C++?
- ListBox基本功能(ListBox1---ListBox换)
- 自己最近是怎么了???
- 自定义GridView分页模板中页码Button的实现
- Emacs的文件管理器Dired[转]