ptcg吧 关注:52,546贴子:377,148
  • 1回复贴,共1
求助

沙奈朵要不要带vip

取消只看楼主收藏回复

之前发的帖子因为漏了二维码被删了😂
萌新入坑组的第一套卡组,这是我自己带vip的一个,问豆包首回合抽到vip超过50%。所以这么组有什么问题吗,求指点


IP属地:浙江来自iPhone客户端1楼2025-11-28 14:08回复
    有人好奇豆包的算法这里我发出来他写的代码
    import numpy as np
    from 网页链接 import hypergeom
    # 计算首回合抽到至少一张VIP的概率
    def calculate_probability(num_vip, deck_size, hand_size):
    # 计算抽不到VIP的概率
    prob_no_vip = hypergeom.pmf(0, deck_size, num_vip, hand_size)
    # 抽到至少一张VIP的概率
    prob_at_least_one = 1 - prob_no_vip
    return round(prob_at_least_one * 100, 2)
    # 沙奈朵卡组参数
    deck_size = 60 # 标准卡组60张
    num_vip = 3 # 三张VIP
    hand_size = 7 # 首回合手牌7张
    dream_draw = 6 # 梦幻特性抽牌数
    # 计算基础概率:首回合手牌7张中抽到至少一张VIP
    base_prob = calculate_probability(num_vip, deck_size, hand_size)
    # 计算加上梦幻特性后的概率:手牌7张+梦幻抽6张,共13张
    dream_prob = calculate_probability(num_vip, deck_size, hand_size + dream_draw)
    # 计算期望抽到的VIP数量(修正版)
    expected_vip = hypergeom.mean(deck_size, num_vip, hand_size + dream_draw)
    print(f"基础情况:首回合7张手牌中抽到至少一张VIP的概率 = {base_prob}%")
    print(f"加上梦幻特性:首回合最多13张牌中抽到至少一张VIP的概率 = {dream_prob}%")
    print(f"期望抽到的VIP数量 = {expected_vip:.2f}张")
    # 计算连续5局游戏中,至少有1局首回合抽到VIP的概率
    prob_in_5_games = 1 - (1 - dream_prob/100) ** 5
    print(f"连续5局游戏中,至少有1局首回合抽到VIP的概率 = {prob_in_5_games:.2f}%")
    # 计算连续10局游戏中,至少有5局首回合抽到VIP的概率
    from 网页链接 import binom
    prob_5_of_10 = binom.cdf(4, 10, dream_prob/100)
    prob_5_of_10 = 1 - prob_5_of_10
    print(f"连续10局游戏中,至少有5局首回合抽到VIP的概率 = {prob_5_of_10:.2f}%")


    IP属地:浙江来自iPhone客户端8楼2025-11-28 20:07
    回复