数值策划吧 关注:1,667贴子:1,481
  • 21回复贴,共1

我太难了,这个期望到底怎么算啊。。

只看楼主收藏回复

我太难了,这个期望到底怎么算啊。。


来自Android客户端1楼2019-09-13 20:38回复
    Ddd


    来自Android客户端2楼2019-09-14 00:04
    回复
      2025-05-26 04:03:53
      广告
      马尔科夫链


      IP属地:广东来自iPhone客户端7楼2019-10-12 22:53
      回复

        马尔诺夫链题目,就是下一个阶段的结果只取决于前一个状态,与再之前的状态无关,而且任何阶段套用同一个转移概率矩阵A,即时对齐(齐次)。
        上面的可以不用看懂
        以下是重点
        转移矩阵A,左边为当前强化等级,上边为下一级强化等级,例如P12即从1级强化到2级的概率,如图可见是0.95。
        初始状态矩阵P(0)=[1 0 0 0 0 0 0 0 0 0]即开局为+0的装备。
        以下通过excel拉表,或者可以通过线代直接计算(A^n)*P(0)得到使用n个强化石后各等级的概率
        一步转移:即P(0)*A,得到的是1次强化后各等级的概率。
        二部转移:一步转移矩阵*A看,得到的是2次强化后各等级的概率
        。。。
        可以无限拉下去,多少石头可以升多少级的概率都一目了然。强化石越多,升到10级的概率就越接近1
        我这拉表结果:
        54个强化石,升到10级的概率是0.509,消耗金币440w
        150个强化石后,升到10级的概率是0.901,消耗金币1400w
        菜鸟我只会算到这了,100%升到10级的消耗肯定是正无穷。


        IP属地:福建8楼2019-11-29 12:10
        收起回复
          强化到10级 期望是72次,花多少金币你算一下就行。


          9楼2020-01-16 21:05
          回复
            感觉这么玩的话 都没人玩这游戏


            IP属地:北京10楼2020-04-23 22:04
            回复
              用excel VBA模拟了10000次强化到10星级的平均值,应该差不多接近于理论的期望了。


              11楼2020-04-29 19:11
              收起回复
                单次测试执行doUntilLoop 就好 所有的打印日志被注释了,如果想看去掉即可。



                Dim spro%, starn%, toplimt%, goldtotal%, roundtotal%
                Dim totalnum%
                Dim tgoldtotal&, troundtotal&
                Sub doUntilLoop()
                starn = 0
                toplimt = 10
                goldtotal = 0
                roundtotal = 0
                Do Until starn = 10
                roundtotal = roundtotal + 1
                'Debug.Print ("第" & roundtotal & "次强化,当前强化上限为" & toplimt & "当前武器星级为" & starn)
                If starn = toplimt Then
                goldtotal = goldtotal + 1
                toplimt = toplimt + 1
                'Debug.Print ("购买上限,当前已消费" & goldtotal & "0W" & Chr(10) & "当前强化上限为" & toplimt & "当前武器星级为" & starn)
                End If
                protmp = Application.VLookup(starn, ThisWorkbook.Sheets("Sheet1").Columns("a:b"), 2, 0) * 100
                rndresult = Int(100 * Rnd + 1)
                If rndresult <= protmp Then
                starn = starn + 1
                'Debug.Print ("合成成功")
                Else
                'Debug.Print ("合成失败")
                starn = starn - 1
                toplimt = toplimt - 1
                starn = Application.WorksheetFunction.Max(0, starn)
                End If
                'Debug.Print ("当前成功率为" & protmp & "%,随机结果为" & rndresult & "升级结果为强化上限" & toplimt & "武器星级为" & starn)
                'Debug.Print ("===================================================")
                Loop
                Debug.Print (roundtotal & "===" & goldtotal)
                troundtotal = troundtotal + roundtotal
                tgoldtotal = tgoldtotal + goldtotal
                End Sub
                Sub test()
                tgoldtotal = 0
                troundtotal = 0
                For i = 1 To 10000
                doUntilLoop
                Next
                troundtotal = troundtotal / 10000
                tgoldtotal = tgoldtotal / 10000
                MsgBox (troundtotal & "颗===" & tgoldtotal & "0W")
                End Sub


                IP属地:福建15楼2020-11-13 12:17
                收起回复
                  2025-05-26 03:57:53
                  广告
                  如果是计算思路的话如下图,
                  n升n+1的成功期望次数为
                  1/n级成功率+n级失败降级概率 * n-1级升到n级所需的次数 /n级成功概率
                  n升n+1的失败期望次数为
                  1/n级成功率*n级失败率*(1+n-1级的失败期望次数)


                  IP属地:福建16楼2020-11-16 19:18
                  收起回复
                    C条件没看懂,其余的很简单。
                    你首先想象一下,你有N把武器,锻造失败的,就毁掉。
                    那些掉1星的等级,就是失败了,武器毁掉了,并返还你到那一级需要的宝石。
                    首先,0升1,这个很好理解,A1=1/概率1=1
                    然后,1升2,我首先,需要锻造 A1/概率2 把1级武器,然后,这一级,我还要1/概率2 次在这一级的锻造。
                    所以,A2=A1/概率2+1/概率2
                    再然后,到A3,这一级,我如果失败,会掉回A1,相当于返还我A1时的锻造次数。
                    所以,除了这一级一次成功,我要将失败的次数*A1。
                    A3=A2/概率3+1/概率3+(1/概率3-1)*A1
                    直至拉到A10,就是你要的答案了。


                    IP属地:上海17楼2021-11-07 16:59
                    回复