网站大量收购独家精品文档,联系QQ:2885784924

IT逻辑面试题.docxVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
IT逻辑面试题

你的丈夫有外遇吗 一座小镇里有100对夫妇,他们都遵守一个奇怪的风俗:如果妻子发现丈夫背叛了她,那她就会在当天夜里杀死自己的丈夫。小镇里的女人都知道别人丈夫 的秘密,却不会说出来。换言之,每个女人只知道除自己丈夫之外其他男人的外遇情况。突然有一天镇长宣布,至少有一个男人背叛了他的妻子,假设镇长说的是真 话,所有人都相信镇长所说的,那么接下来将会发生什么? 我们不妨先假设只有1个男人背叛了他的妻子,这时那个男人的妻子会猛然发现自己竟然不知道任何男人有外遇的消息(而其他99个女人知道的都是1个男 人背叛了自己的妻子,即真相),对此唯一的解释便是有且只有一个有外遇的男人,就是自己的丈夫。所以她会在当天夜里杀死自己的丈夫。然后,没有然后了。 那如果有2个男人呢?这时小镇里有98个女人知道真相,但另外2个女人只知道1个男人有外遇,并不能确定自己的丈夫是否也有外遇。所以在镇长宣布此 事的当天,全镇相安无事。但到了第2天,当这2个女人发现对方都未处死自己的老公时,就会意识到不止一个男人有外遇了。那便是有2个男人有外遇,这样的 话,其中1个肯定是自己的丈夫。于是,这2个女人会同时在夜里处死自己的丈夫。 以此类推,很容易归纳出来,如果小镇里有n个不忠的丈夫,他们都会在镇长宣布后的第n天夜里被处死。 实际上,有时候虽然只有极少量的信息,但只要仔细分析,一样可以得出有效的结论。上述这个谜题相信有很多人见过,类似的还有著名的 蓝眼睛岛问题 ,只是这个更加复杂一点。 隔离监狱中的100个犯人 在一所监狱中,关押了100个相互隔离的犯人。典狱长每天随机选择一名犯人(他可能被重复选中多次),扔到一间小黑屋中关禁闭。这个房间中只有一个 电灯和开关,除了小黑屋中的人,谁都看不到这盏灯,更无法控制它。关进去的人则可以打开或关闭电灯,也可以选择什么都不干。犯人们随时可以叫停这场游戏并 告诉典狱长:“所有犯人都被关过小黑屋。”如果这句话是真的,所有犯人将会被释放;但如果这句话是假的,他们全部会被处死。在游戏开始前,犯人们被允许聚 在一起商议对策,他们该怎么做才能保证自己一定能够被释放呢? 首先我们随意选择一个犯人A作为计数者。 现在让除了A以外的任何一个犯人进入小黑屋后,都将严格遵循下面这个法则: 如果他以前从来没有打开过这盏电灯,并且现在这盏电灯是关着的,那么打开它,除此以外不作任何事情。而如果典狱长选择的是A,并且当他进入这个房间 以后房间里的电灯是开着的,那么他就把电灯关掉,并在自己的计数里加1。当他的计数达到99之日(从1开始),便是所有犯人重获自由之时。 工作分金问题 有个工人将为你工作七天,你用一块金条来支付工资。每天工作结束以后你都要给工人发工资,但你只能在这块金条上折两次。应该如何选择金条上的折断位置,以及支付工资的方法? 这个问题并不困难,但如果工人为你工作X天,你该怎么分割这块金条呢? 让我们先来回答最初的问题,为读者做个启发。把金条分成如下三份:第一份是原金条的 1/7(编号为1号金条);第二份是原金条的 2/7(2号金条);第三份是 4/7(3号金条)。接下来的7天你将这样支付工资: 第1天:给工人1号金条(此时你有2号和3号金条,工人有1号金条) 第2天:给工人2号金条,并取回1号金条(此时你有1号和3号金条,工人有2号金条) 第3天:给工人1号金条(此时你有3号金条,工人有1号和2号金条) 第4天:给工人3号金条,并取回1号和2号金条(此时你有1号和2号金条,工人有3号金条) 第5天:给工人1号金条(此时你有2号金条,工人有1号和3号金条) 第6天:给工人2号金条,并取回1号金条(此时你有1号金条,工人有2号和3号金条) 第7天:给工人1号金条,事成收工。 有过一些编程经验的读者可能会马上意识到,这其实正是二进制的原理。 1,2,4 三个十进制数的二进制形式分别是 1,10,100,用这三个数可以表示 [0,7] 区间(换成二进制形式即 [000,111] 区间)里的所有整数。 同样的道理可以计算出,如果有工人为你工作X天,而你依然打算用一块金条来支付工资的话,那么最少需要在金条上折断( log 2 [X+1] - 1 ) 处。 寻找次品 你有10只装满了球的盒子,其中有一只盒子里装的是次品。已知正常的球每个重 10g,而次品球每个重 9g。如何只使用一次电子秤,就找出哪只盒子装的是次品? 我们在面对这类称重找次品的问题时,第一想法通常是从每个盒子中拿出一个球来称重。然而,这道题的关键恰恰是从不同的盒子里取出不同数目的球。 我们先把 10 只盒子从 0 到 9 编号,然后从每只盒子中取出与这只盒子编号数目相等的球来,举例来说,0号盒子里不需要取球, 1 号盒子里拿出 1 只球, 2 号盒子里拿出 2 只球,等等。 然后我们这些球一起放

您可能关注的文档

文档评论(0)

zsmfjy + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档