IBM公司向来以高素质人才作为企业持续竞争力的保证。进入IBM公司是差不多每个IT人的梦想。下面这条IBM公司的面试题,给大家试试看,看看是否具备进入IBM的实力!村子里有50个人,每人有一条狗,在这50条狗中有病狗(这种病不传染),于是人们要找出病狗。
 
每个人可以观察其他49条狗,以判断他们是否生病,(如果有病一定能看出来),只有自己的狗不能看,观察后得到的结果不得交流,也不能通知病狗的主人。主人一旦推算出自己家的狗是病狗就是枪毙自己的狗(发现后必须在一天内枪毙),而且每个人只有权利枪毙自己的狗,没有权利打死其他人的狗。第一天大家全看完了,但枪没有响,到了第三天传来一阵枪声,问村里共有几条病狗,如何推算出来的? 

解决方案 »

  1.   

    IBM是一家搞农产品出口的公司?
      

  2.   

    0条,大家发现没狗病了,也没人杀狗,于是就觉得自己的狗病了,最后全村人都把自己的狗杀了,WAHAHA
      

  3.   

    IBM难道是挂IT公司的名号来卖狗肉的
      

  4.   

    过的天数n
    n = 0         1
    n > 0       n + 1    以有病狗的主人的视角,进行推断,就算出来了哈因为外面有n条病狗,所以在前n天内,才不会认为自己的狗是病狗,
    直到过了n天,既然外面的病狗主人没枪毙自己的狗,自然也是因为他们看到了n条病狗,
    所以
      

  5.   

    应该是3条:
    解析:
      没有病狗不可能,前提条件不允许。
      如果是一条,那么什么病狗都没有发现的人的狗就有问题,很自然第一天就有枪响,可是等了一天没有,那么每个人都在其他人的狗中发现了问题。
      进行到第二天,那么就绝对不止一条狗有病了,那么很显然只看到一条狗有病的人就必须相信自己的狗有病了,确有如此的话,在第二天就应该有枪响,事实没有,那么就没有人只看到一条狗有病。
      到了第三天,可以得出结论没有人只看到一条狗有病,那么每个人至少看到2条,此时的病狗数〉=3条,依此类推,只看到2条病狗的人绝对当天之内会枪杀自己的狗。
    .......
      m < n
      
      

  6.   

    楼上的答案标新立异,好,IBM决定录用你...
      

  7.   

    错``应该是想说明响了几枪活着的狗=Z
    枪声=YZ=50-Y就可以知道了
      

  8.   

    题目给我们的已知条件
       条件1:50条狗中有病狗
       条件2:每个人可以观察其他49条狗,只有自己的狗不能看
       条件3:观察后得到的结果不得交流
       条件4:每个人只有权利枪毙自己的狗
       条件5:第一天大家全看完了,但枪没有响
       条件6:到了第三天传来一阵枪声
    设病狗的条数是n
       条件1 => n >= 1;
       条件1 + 条件5 + 条件4 => n > 1 (条件7);(如果只等于1,则必有人第一天就发现别的狗没有病,只有自家的狗有病,会毙了自家的狗);
       条件6 + 条件7 => n > 2 (条件8); (到了第二天,每个人都知道n>1, 若n = 2, 有两人看到只有一只病狗,则可知n = 1, 2,而 n > 1,推得n = 2,发现自家的狗有问题,与条件6不符;  )
       条件6 + (条件8) => n = 3;(到了第二天,每个人都知道n>1, 若n = 2, 有三人看到只有两只病狗,则可知n =  2,3,而 n > 2,推得n = 3,发现自家的狗有问题,条件6符合)
      

  9.   

    3条。假设狗的主人A没有看到病狗,则第一天杀自己的狗;(因为至少有一只生病)
    假设A看到一条病狗而且第一天就听到枪声,则说明自己的狗没有问题;
    假设A看到一条病狗但第一天没有听到枪声,则说明那条病狗的主人也看到了一条病狗(否则他会第一天杀了自己的狗),则说明有两条病狗,于是A杀自己的狗;
    假设A看到二条病狗但第一天、第二天都没有听到枪声说明二条病狗的主人看到的也是两条病狗,也就是有三条病狗,所以A杀自己的狗;
    假设A看到三条病狗但第一、第二、第三天都没有听到枪声说明三条病狗的主人看到的也是三条病狗,也就是有四条病狗,所以A杀自己的狗;......以此类推有几只病狗则第几天被全部杀。