文档介绍:IBM经典面试题
是一篇好范文,认为应该跟大家分享,看完假如认为有帮助请记得收藏。
IBM企业一直以高素质人才作为企业连续竞争力确保。进入IBM企业是差不多每个IT人梦想,偶然看到这条IBM企业面试题,给大家试试看,看看是否具备进入IBM实力! 
 
??村子中有50个人,每人有一条狗。在这50条狗中有病狗 这种病不会传染 。于是大家就要找出病狗。每个人能够观察其它49条狗,以判定它们是否生病,只有自己狗不能看。观察后得到结果不得交流,也不能通知病狗主人。主人一旦推算出自己家是病狗就要**毙自己狗,而且每个人只有权利枪毙自己狗,没有权利打死其它人狗。第一天,第二天全部没有枪响。到了第三天传来一阵枪声,问有几条病狗,怎样推算得出? 
??第一个推论: 
 
??A、假设有1条病狗,病狗主人会看到其它狗全部没有病,那么就知道自己狗有病,所以第一天晚上就会有枪响。因为没有枪响,说明病狗数大于1。 
??B、假设有2条病狗,病狗主人会看到有1条病狗,因为第一天没有听到枪响,是病狗数大于1,所以病狗主人会知道自己狗是病狗,所以第二天会有枪响。既然第二天也每有枪响,说明病狗数大于2。 
由此推理,假如第三天枪响,则有3条病狗。 
第二种推论 
??1 假如为1,第一天那条狗必死,因为狗主人没看到病狗,但病狗存在。 
??2 若为2,令病狗主人为a,b。 a看到一条病狗,b也看到一条病狗,但a看到b病狗没死故知狗数不为1,XX而其它人没病狗,所以自己狗必为病狗,故开**;而b想法和a一样,故也开枪。 
由此,为2时,第一天看后2条狗必死。 
??3 若为3条,令狗主人为a,b,c。 a第一天看到2条