穿衣活动贫民期望得分2388.71
2025/12/29307 浏览综合
首选,我们假设你是超级非酋,只有普通套,那么你现在会拥有的套装:
精致:无套装
甜美+舒适:午后/闲暇居家448,总计2套
潮流+野性:热情/狂野摇滚650、嘻哈/异域弄潮448,总计4套
活力+闪耀:米白/晨光街道650,总计2套
青春+童趣:治愈/忧郁萌宠742,总计2套
总计有9个词条,每天会从中随机挑选出3个词条,然后根据词条选择不重复套装获得分,以获取最高分为原则。仅符合词条的套装得分,若套同时符合多个词条,则得分翻倍。
例如“甜美+潮流+青春”应选择“治愈萌宠742+忧郁萌宠742+狂野摇滚650=2134”
例如“甜美+舒适+青春”应选择“午后居家448*2+闲暇居家448*2+忧郁萌宠742=2534”
例如“甜美+闪耀+精致”应选择“晨光街道650+米白街道650+闲暇街道448=1748”
(这里我们遵循 “枚举所有可能的 3 词条组合 → 对每个组合计算最优得分 → 求所有组合得分的平均值” 的步骤计算)
可得每日得分期望为:2388.71
剩余15天,还可得分:2388.71*15 ≈ 35800
结论:获取衣服绰绰有余
补充:该计算不包含通用配饰与高级服饰,如果有就更稳了,至于排行榜就别想了
附件(每日得分期望计算代码):
import itertools
# 1. 定义基础数据
# 9个独立词条
tags = ["精致", "甜美", "舒适", "潮流", "野性", "活力", "闪耀", "青春", "童趣"]
# 套装列表:(名称, 基础得分, 匹配的词条列表)
suits = [
("午后居家", 448, ["甜美", "舒适"]),
("闲暇居家", 448, ["甜美", "舒适"]),
("热情摇滚", 650, ["潮流", "野性"]),
("狂野摇滚", 650, ["潮流", "野性"]),
("嘻哈弄潮", 448, ["潮流", "野性"]),
("异域弄潮", 448, ["潮流", "野性"]),
("米白街道", 650, ["活力", "闪耀"]),
("晨光街道", 650, ["活力", "闪耀"]),
("治愈萌宠", 742, ["青春", "童趣"]),
("忧郁萌宠", 742, ["青春", "童趣"]),
]
# 2. 生成所有3词条组合(不重复)
tag_combinations = list(itertools.combinations(tags, 3))
total_combinations = len(tag_combinations)
print(f"总共有 {total_combinations} 种3词条组合")
# 3. 定义函数:计算单个词条组合的最优得分
def calculate_max_score(selected_tags):
max_total = 0
# 枚举所有可能的3套不重复套装组合
for suit_combination in itertools.combinations(suits, 3):
current_total = 0
for suit in suit_combination:
suit_name, base_score, suit_tags = suit
# 计算该套装匹配的选中词条数量k
k = len(set(selected_tags) & set(suit_tags))
if k == 0:
# 不匹配任何选中词条,不得分
current_score = 0
else:
current_score = base_score * k
current_total += current_score
# 更新最大得分
if current_total > max_total:
max_total = current_total
return max_total
# 4. 计算所有组合的最优得分并求和
total_score = 0
score_dict = {} # 用于记录每个组合的得分(可选)
for idx, combo in enumerate(tag_combinations):
max_score = calculate_max_score(combo)
total_score += max_score
score_dict[combo] = max_score
# 每10个组合打印一次进度
if (idx + 1) % 10 == 0:
print(f"已计算 {idx+1}/{total_combinations} 个组合,当前累计得分:{total_score}")
# 5. 计算平均得分期望
average_score = total_score / total_combinations
print("\n" + "="*50)
print(f"所有组合的总得分:{total_score}")
print(f"组合总数:{total_combinations}")
print(f"每日平均得分期望:{average_score:.2f}")

