C++代码在未触发大保底机制时,每抽一发有p/2的概率抽到当期5星,有p/2的概率抽到常驻5星,其余的1一p概率不出5星。当抽到常驻5星后,触发了大保底机制,以后每抽一发有p的概率抽到当期5星,其余的1-p概率不出5星。 另外,当连续89抽未出5星时,下一抽必出5星。也就是说,若未触发大保底机制,本次抽卡1/2概率抽到当期5星,有1/2的概率抽到常驻5星;若已触发了大保底机制,则100%概率抽到当期5星。 现在给定了抽中5星的概率p。米小游想要抽到一张当期5星卡,她想知道抽卡次数的期望是多少? 输入描述
根据题目描述,我们可以使用概率的方法来求解抽卡次数的期望。
设抽到一张当期5星卡的期望抽卡次数为E。根据题目描述,我们可以列出以下等式:
E = 1 + (1/2) * E + (1/2) * (1 + E) + (1/2) * (1 + E) + (1/2) * (1 + E) + ... + (1/2) * (1 + E) + (1/2) * (1 + E) + p * (1 + E)
其中,第一项1表示第一次抽卡,后面的每一项都表示触发大保底机制前的抽卡情况,最后一项p * (1 + E)表示触发大保底机制后的抽卡情况。
化简上述等式,得到:
E = 1 + (1/2) * E + (1/2) * (1 + E) + (1/2) * (1 + E) + (1/2) * (1 + E) + ... + (1/2) * (1 + E) + (1/2) * (1 + E) + p * (1 + E)
E = 1 + (1/2) * E + (1/2) * (1 + E) + (1/2) * (1 + E) + (1/2) * (1 + E) + ... + (1/2) * (1 + E) + (1/2) * (1 + E) + p + p * E
将等式中的重复项合并,得到:
E = 1 + (1/2) * (E + 1 + E) + (1/2) * (1 + E) + p + p * E
E = 1 + (1/2) * (2E + 1) + (1/2) * (1 + E) + p + p * E
E = 1 + E + 1/2 + 1/2 * E + 1/2 + 1/2 * E + p + p * E
E = 3/2 + 3/2 * E + 2p + p * E
将E移到等式左边,得到:
E - 3/2 * E - p * E = 3/2 + 2p
合并同类项,得到:
(1 - 3/2 - p) * E = 3/2 + 2p
化简,得到:
(1/2 - p) * E = 3/2 + 2p
E = (3/2 + 2p) / (1/2 - p)
所以,抽卡次数的期望为 (3/2 + 2p) / (1/2 - p)。
创作工场
免责声明:
以上内容除特别注明外均来源于网友提问,创作工场回答,未经许可,严谨转载。
点击这里>>使用🔥专业版,更聪明、更完整、更原创!