我正在寻找一种算法(除了天真的蛮力解决方案没有运气),有效地(O(n ^ 2)优先)执行以下操作:
假设我正在玩游戏,在这个游戏中我将不得不回答n个问题(来自不同类别的每个问题)。对于每个类别“i”i = 1,...,n我计算了概率p_i以给出正确的答案。
对于每个连续的k个正确答案,我得到k ^ 4分。预期的平均利润是多少?
我将在以下示例中阐明预期利润的含义:
在n = 3且p_1 = 0.2的情况下,p_2 = 0.3,p_3 = 0.4
预期利润为
EP =(0.2 * 0.3 * 0.4)3 ^ 4 +(我得到的所有3个答案都正确)
(0.2 * 0.3 * 0.6)2 ^ 4 +(0.8 * 0.3 * 0.4)2 ^ 4 +(0.2 * 0.7 * 0.4)2+(2个答案正确)
0.2 * 0.7 * 0.6)+(0.8 * 0.3 * 0.6)+(0.8 * 0.7 * 0.4)(1回答正确)
对于每个可能的结果,我正在计算概率并将其与获得的点相乘。然后得到所有这些的总和。
有什么想法吗? 我只对这笔钱本身感兴趣。
谢谢!
答案 0 :(得分:1)
如果A[t]
,t
或t = 0
'问题的回答错误,请t = n
为t
个问题后的预期利润。然后你可以计算
A[0] = 0
A[t]
= sum(i = 0..t-1)(获得问题的概率i
.. t-2
正确且t-1
错误)*(({ {1}}) 4 + A [i])t-i-1
时。
0 < t < n
的计算方法与上述一般情况类似,但您还应在A[n]
之后的所有问题都正确回答时添加一个术语。