ImageVerifierCode 换一换
格式:DOCX , 页数:29 ,大小:98.64KB ,
资源ID:19142774      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/19142774.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(爱因斯坦谜题解答三种算法比较Word格式文档下载.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

爱因斯坦谜题解答三种算法比较Word格式文档下载.docx

1、5.The owner of the green house drinks coffee. 6.The Pall Mall smoker keeps birds. 7.The owner of the yellow house smokes Dunhills. 8.The man in the center house drinks milk. 9.The Norwegian lives in the first house. 10.The Blend smoker has a neighbor who keeps cats. 11.The man who smokes Blue Master

2、s drinks bier. 12.The man who keeps horses lives next to the Dunhill smoker. 13.The German smokes Prince. 14.The Norwegian lives next to the blue house. 15.The Blend smoker has a neighbor who drinks water. The question to be answered is: Who keeps fish?这道迷题出自1981年柏林的德国逻辑思考学院。据说世界上只有2%的人能出答案。就连大名鼎鼎的爱

3、因斯坦也成为此题大伤脑筋,所以这道题也经常被国外知名公司用做面试题目,相信许多朋友都只做出过一个答案,今天就用计算机来看看答案:C#代码(代码来源:tech.ccidnet./art/322/20040304/94061_1.html,在此感原作者):usingSystem;namespacenetsafe.mathpublicclassayst/问题中的所有元素/summarystring,data=黄房子,蓝房子白房子红房子绿房子,挪威人英国人德国人丹麦人瑞典人DUNHILLPRINCE混合烟,PALLMALLBLUEMASTER咖啡矿泉水茶牛奶啤酒鱼恐龙马鸟狗;answer用来存放答案i

4、nt,answernewint6,6;ALL122;intcount1;nLevel0;intListint6;staticvoidMain(stringargs)aystcayst();c.p();/生成全排列到allc.run();Console.Read();按任意键继续run()i1,i2,i3,i4,i5;/通过逻辑条件顺序的有效选择来优化程序for(i1i1120;i1+)/房子/9、挪威人住第一间房子/14、挪威人住在蓝房子旁边/不满足条件就短路if(ALL2,i1!2)continue;(intj5;j+,answerj,1ALLj,i1);(i2i2i2+)/人种2i2)(A

5、LL1,i21)/1、英国人住在红房子里/(find(1,4)find(2,2)/4、绿房子在白房子左边5)find(1,3)(i3i3i3+)/烟3i3)/13、德国人抽PRINCE烟(find(2,3)find(3,/7、黄房子主人抽DUNHILL烟1)(i4i4i4+)/饮料4i4)/8、住在中间那间房子的人喝牛奶(ALL3,i4/5、绿房子主人喝咖啡find(4,/3、丹麦人喝茶/15、抽混合烟的人的邻居喝矿泉水(Math.Abs(find(3,-/12、抽BLUEMASTER烟的人喝啤酒(find(3,5)(i5i5i5+)/宠物5i5)/10、抽混合烟的人住在养鱼人的旁边find(

6、5,/2、瑞典人养了一条狗/6、抽PALLMALL烟的人养了一只鸟4)/11、养马人住在DUNHILL烟的人旁边(Math.Abs(find(5,/能活到这里的data,当然是答案喽write_answer();非常典型的用递归实现排列组合算法。p()nCount,nJudge,key;nLevel+;(nLevel5)writeall();/有一种排列就写到All数组里nLevel-;return;(nCountnCountnCount+)key(nJudgenJudgenJudge+)=ListnJudge)break;(key0)ListnLevelnCount;p();写入all数组w

7、riteall()i;(iii+)ALLi,countListi;count+;find(inti,j)k;(kkk+)(answerk,ireturn-1;将答案打印出来write_answer()j+)Console.Write(datai1,+);Console.WriteLine();运行以后结果是:可以看出答案并不唯一,有许多组合理的答案。还有一种暴力破解的算法C#代码如下(代码来源:System.Collections.Generic;System.Text;爱因斯坦迷题1enum国籍英国,瑞典,丹麦,挪威,德国颜色红,绿,蓝,黄,白宠物鸟,猫,马,鱼,狗饮料水,牛奶,咖啡,茶,香

8、烟blends,blue,prince,dunhill,pallProTableprivateconststringrule1、在一条街上,有5座房子,喷了5种颜色。2、每个房里住着不同国籍的人3、每个人喝不同的饮料,抽不同品牌的香烟,养不同的宠物问题是:提示:1、英国人住红色房子2、瑞典人养狗3、丹麦人喝茶4、绿色房子在白色房子左面5、绿色房子主人喝咖啡6、抽PallMall香烟的人养鸟7、黄色房子主人抽Dunhill香烟8、住在中间房子的人喝牛奶9、挪威人住第一间房10、抽Blends香烟的人住在养猫的人隔壁11、养马的人住抽Dunhill香烟的人隔壁12、抽BlueMaster的人喝啤酒13、德国人抽Prince香烟14、挪威人住蓝色房子隔壁15、抽Blends香烟的人有一个喝水的邻居Rulegetrule;T0,颜色,宠物,饮料,N/求排列aidint120,N;ProTable()i0N;i0+)i1+)i0)i2+)|i3+)i4+)aidk,0i0;i1;i2;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1