中关村在线

游戏

少女前线:云图计划抽卡概率解析

少女前线:云图计划抽卡概率如何计算?本文通过排列组合与程序验证,科学分析四连抽中相同或不同人形的概率,破除误区,为玩家提供理性参考。

近日见到一些奇特言论,因从不随意反驳他人,故另开一帖表达看法。

某玩家声称:

毕业多年后,我凭直觉感到有些异常。尽管直觉未必可信,但为求准确,仍需通过科学方法加以验证。

由于统计时已将野良排除出池子,因此视作池中无人形为野良。当前池中共有8个人形,去掉野良后实际为7个。抽取四次金卡,每次结果均为这7个人形之一,概率为100%。这句话虽显而易见,却是后续推论的基础。

假设七种人形分别用字母A到G表示,每次抽取有7种可能,连续抽取四次共有7?=2401种组合方式。其中四次均为同一人形的情况仅有7种,即AAAA、BBBB、CCCC、DDDD、EEEE、FFFF、GGGG。因此,出现四次相同人形的概率为7除以2401,等于1/343,约等于0.29%。

假如我们运气极佳,想要连续抽出四个不同的人形,那么第一次有7种可能,第二次需与前次不同,剩下6种选择,依此类推。四次抽取各不相同的组合共有7×6×5×4=840种。而所有可能的抽取方式总共为2401种,因此抽出四个不同人形的概率约为840除以2401,大约为35%。

附上一张3选3示意图便于理解,因7选3有840种组合,难以全面展示。

三个中选三个的排列共有六种方式。

甚至能将其编写成程序代码。

public List> permute(List nums) {

List current = new ArrayList<>(nums);

List> res = new ArrayList<>();

backtrack(current, 0, res);

return res;

}

当前已选元素位于数组前部,候选元素紧随其后,两者共同构成完整集合的划分。

void backtrack(List current, int m, List> res) {

if (m == current.size()) {

res.add(new ArrayList<>(current));

}

从备选方案中挑选合适项

for (int i = m; i < current.size(); i++) {

// 选择数字 current

Collections.swap(current, m, i);

传入参数应为 m+1,而非 i+1,请注意区分。

backtrack(current, m+1, res);

// 撤销选择

Collections.swap(current, m, i);

}

}

提供一个无重复数字集合,生成其所有可能的全排列示例程序。

纯学术探讨,避免传播错误信息。

展开全文
人赞过该文
内容纠错

相关电商优惠

评论

更多评论
还没有人评论~ 快来抢沙发吧~

读过此文的还读过

点击加载更多

内容相关产品

说点什么吧~ 0

发评论,赚金豆

收藏 0 分享
首页查报价问答论坛下载手机笔记本游戏硬件数码影音家用电器办公打印 更多

更多频道

频道导航
辅助工具