逻辑

2016-09-10 65 views
0

所以我引用这个问题可以在这里找到:Problem C "Not So Random"逻辑

现在我遇到难以理解的问题甚至要求。更具体地说,测试用例1看起来好像得到了解释,但对于示例2,我不明白5 * 0.72的值是如何得出的。

(5&5) -> 5 with 0.1 probability 
(5|5) -> 5 with 0.5 probability 
(5^5) -> 0 with 0.4 probability 

这将是第一台机器的结果。现在,我不明白的是概率如何相互作用进入机器2.机器2被考虑的输入是什么?如果我们考虑所有三个具有和,或或和xor的情况,那么0.72如何计算为机器2的输出= 5的概率?

回答

0

基于你的观察,对机器2的输入是

  • 5的概率是0.6
  • 0的概率为0.4

另一固定参数ķ为所有相同机器,所以机器2也是5。

这给我们留下了什么操作机器2上运行以下六种情形:

  • 5&5=5概率0.6 * 0.1
  • 5|5=5概率0.6 * 0.5
  • 5^5=0概率0.6 * 0.4
  • 0&5=0以概率0.4 * 0.1
  • 0|5=5以概率0.4 * 0。 5
  • 0^5=5以概率0.4 * 0.4

其中给出的是在实施例中描述的分布:0的概率是0.28,和5的概率是0.72。

0

机器1的输出是机器2的输入,所以机器2的输入为0,概率为0.4,概率为0.6,概率为5。

正如我们已经看到,当输入到机器长度为5时,输出概率是0.4/0.6

类似地,应该很容易地看到,在输入0时,概率是0.1和0.9(OR或XOR)。

所以级联输出为5的概率为0.9 * 0.4 + 0.6 * 0.6。