陈尚涵 发表于 2024-1-16 22:21:09

除了+60%就是-50%,你玩不玩?

本帖最后由 陈尚涵 于 2024-1-17 19:10 编辑

本主题讲到简单的概率,做的不是很好,见谅{:10_254:}
-----------------------------------------------------------------------------------------------------------------------------------------------------
有一个游戏,你给他钱,每一次你的钱要么+60%(50%概率),要么-50%(50%概率),那你玩不玩?{:10_256:}
一眼看,60%>50%,那这不是稳赚不亏?呵呵,理想很美好,现实很苦感,真的是这样吗?用c++模拟一下不就知道了?{:10_279:}
好好好,咱们就给他1w,玩个100次,进行100次这样的测试,接下来花两分半写一下代码:{:10_254:}
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <iomanip>
using namespace std;
int main(){
      cout << fixed;
      srand(time(0));
      for (int times = 1; times <= 100; times++){
                double money = 10000;
                for (int days = 1; days <= 100; days++){
                        int randnum = rand() % 100 + 1;
                        if (randnum <= 50){
                              money *= (1 + 0.6);
                        }
                        if (randnum > 50 && randnum <= 100){
                              money *= (1 - 0.5);
                        }
                }
                cout << times << ":" << money << endl;
      }
      return 0;
}
OKK,来看结果(忽略11-89):
1:1.461502
2:14.965777
3:153.249554
4:1.461502
5:0.456719
6:1.461502
7:0.000425
8:4.676805
9:1569.275434
10:0.000004
90:0.000042
91:0.013938
92:47.890486
93:1569.275434
94:1.461502
95:0.013938
96:0.456719
97:0.142725
98:0.013938
99:0.044601
100:153.249554
不是吧?怎么都是个位数啊?最大的也没回本?{:10_277:}
怎么样,是不是非常的反直觉?为啥啊?{:10_257:}
那不妨来用数学计算一下,玩一次的话,那么期望得到的收益应该是
(1+0.6)^0.5(1-0.5)^0.5-1
解释一下,玩一次的话,就有0.5次+60%,另外0.5次-50%
其中增加和减少都是基于本金,也就是1,所以要基于1做加法
对于次数来说,概率重合需要乘算,相同的乘算自然是指数
最后-1是要与本金计算收益
好好好,这么算完之后,嗯?{:10_277:}
结果大约为:-10.557%
??也就是说,我玩一次,那么我期望收益-10.557%?额,怪不得上面都是个位数{:10_250:}
可是我们刚才是100次,emm有道理,那100次就有50次+60%,另外50次50%
类似地,x次有x/2次+60%,另外x/2次-50%
哦,这不就成一个函数了?x为玩的次数,y为期望收益,得到这个式子
y=(1+0.6)^0.5x(1-0.5)^0.5x-1
来,用desmos画个图

显然,在有意义的区间(0,+∞)中,函数单调递减,那么来算一下x=100的函数值
结果大约为:-99.998%
好吧,这样看来,上面四位数的结果是真的幸运啊,这真的亏麻了{:10_266:}
哎,那我得再加多少才可以达到平衡啊?考虑单次的话,咱们就设x为要加的量,y就是期望收益,函数搞起来
y=(1+0.6+x)^0.5(1-0.5)^0.5-1
嗯,也没有那么复杂,来,画个图

哦,零点在0.4的位置上
emm,那就是0.6+0.4=1
也就是+100%和-50%达成了平衡?{:10_282:}
虽说这是期望收益的结果,但是大家有没有发现,其实1*(1+100%)*(1-50%)=1,刚好又回来了{:10_257:}
欸,非常的神奇啊,这个和相反数很像啊,只不过是基于增益的
由于这个东西是乘算,所以基数不一样了,相反数不能抵消了{:10_266:}
那我想办法找到1*(1+x)*(1-50%)=1不就好了,这不就可以抵消了吗?{:10_256:}
这就意味着,一亏一赚,抵消了!那么假如三亏两赚,就和亏了一次一样!神奇!{:10_279:}
这是不是和加法很像了就?原来是10,赢就+1,输就-1,一赢一输抵消了!
重复的加法变成乘法,重复的乘法(增益)变成指数,这不就升维了吗!{:10_256:}
好好好,回到开头的问题,玩不玩?为啥?不玩,因为增益是比加算要高一个维度,所以说相反数在增益这就没有比较价值了,希望你能有所收获{:10_256:}
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
@zhangjinxuan @liuhongrun2022 @高山 @学习编程中的Ben @sfqxx

小甲鱼的二师兄 发表于 2024-1-17 01:49:55

赢了应该 +100% 才行 {:10_304:}

陈尚涵 发表于 2024-1-17 10:43:33

小甲鱼的二师兄 发表于 2024-1-17 01:49
赢了应该 +100% 才行

没错,从期望和消除两方面都是这个结果

sfqxx 发表于 2024-1-17 17:19:32

嗯嗯

尹玄睿 发表于 2024-1-17 17:43:03

为了鱼币来回复

小甲鱼的二师兄 发表于 2024-1-17 18:11:30

陈尚涵 发表于 2024-1-17 10:43
没错,从期望和消除两方面都是这个结果

内容很赞,期待多更新~

小甲鱼的二师兄 发表于 2024-1-17 18:11:47

尹玄睿 发表于 2024-1-17 17:43
为了鱼币来回复

{:5_102:} 为了知识多少也得顶一下~

fishc.wt 发表于 2024-1-17 19:48:13

加减100就玩了{:10_256:}

15945179970 发表于 2024-1-18 00:42:15

{:5_106:}

kerln888 发表于 2024-1-18 09:27:35

输了资产减少一半。。。赢了才增加0.6,太黑了

QQQAAAXXX 发表于 2024-1-25 03:39:06

陈尚涵 发表于 2024-1-25 09:59:57

QQQAAAXXX 发表于 2024-1-25 03:39
大佬,完全看不懂

需要简单的概率论和数学基础

某一个“天” 发表于 2024-1-29 16:33:59

{:5_109:}

鱼C-小师妹 发表于 2024-1-29 18:43:53

赌博都是这个套路{:10_256:}

77n7 发表于 2024-1-30 20:17:36

除了过程都看懂了

学C的h 发表于 2024-2-1 11:24:33

厉害

1Asdusdhjssd 发表于 2024-2-2 21:28:29

zhic{:10_266:}

Gordon1 发表于 2024-2-4 18:46:19

我的天

zhangchenyvn 发表于 2024-2-4 20:38:20

育碧!
已评分

三体人的智子 发表于 2024-2-20 20:23:37

页: [1] 2
查看完整版本: 除了+60%就是-50%,你玩不玩?