当前位置: 代码迷 >> J2SE >> 百度面试题解决方案
  详细解决方案

百度面试题解决方案

热度:86   发布时间:2016-04-24 12:32:36.0
百度面试题
同学去百度面试 面试官问了一个概率问题 dota两人开黑 随机到一边的概率 一开始我想两个人 先拿出一个 去近卫的概率是一半 另一个人去近卫的概率也是一半,这样两人都在近卫的概率是14 同理都去天灾也是1/4 所以结果是1/2 但后来同学又说一个人先随机 随机到近卫的概率是1/2 另一个人再随机 随到近卫的概率就是4/9 相乘就是2/9 那么最后结果肯定不一样了 求解答

------解决方案--------------------
你原来的想法代码类似下面,结果甚至可能是10v0
Java code
    boolean[] team = new boolean[10];    Random rand = new Random();    for (int i = 0; i < team.length; i++) {      team[i] = rand.nextBoolean();    }    int count = 0;    for (boolean b : team) {      if (b) {        count++;      }    }    System.out.println(count);
------解决方案--------------------
这个答案好 百度来的


说4/9的 肯定是这么想的
第一个人在天灾的概率是1/2,而假设他在天灾了,于是第二个人在天灾的概率是4/9了
近卫同理,于是4/9
而事实上 第二个人如果魔兽内置没改变随机概率的话,到天灾的概率仍为1/2,知道天灾满人,那么到天灾的概率为0,近卫为1
这里的概率只有0,1/2,1 没有其他。
  相关解决方案