You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何生成5门作业0-4分的无重复组合并计算平均值?

实现步骤(Google Sheets)

你需要的是不考虑顺序的可重复评分组合(即按等级出现次数分组,同一组内的排列视为同一组合),可以通过以下公式直接生成所有符合要求的组合及对应平均值:

完整公式

在任意空白单元格(比如A1)输入以下公式:

=LET(
  // 定义等级与对应分数,可根据实际调整
  grades, {"A","B","C","D","E","F"},
  scores, {4,3,2,1,0,0},
  total_assignments, 5,
  // 生成所有等级出现次数的合法组合(n_A+n_B+n_C+n_D+n_E+n_F=5)
  count_pairs, ARRAYFORMULA(QUERY(FLATTEN(
    SEQUENCE(total_assignments+1,1,0)&","&
    SEQUENCE(total_assignments+1,1,0)&","&
    SEQUENCE(total_assignments+1,1,0)&","&
    SEQUENCE(total_assignments+1,1,0)&","&
    SEQUENCE(total_assignments+1,1,0)
  ), "where (split(Col1,',')[0]+split(Col1,',')[1]+split(Col1,',')[2]+split(Col1,',')[3]+split(Col1,',')[4]) <= "&total_assignments&" label Col1 ''")),
  // 补全F的次数并转为数组
  count_array, ARRAYFORMULA({SPLIT(count_pairs, ","), total_assignments - MMULT(SPLIT(count_pairs, ","), SEQUENCE(5,1,1,0))}),
  // 生成排序后的评分组合字符串(如AAAAF)
  grade_strings, ARRAYFORMULA(
    REPT(INDEX(grades,1), INDEX(count_array,,1))&
    REPT(INDEX(grades,2), INDEX(count_array,,2))&
    REPT(INDEX(grades,3), INDEX(count_array,,3))&
    REPT(INDEX(grades,4), INDEX(count_array,,4))&
    REPT(INDEX(grades,5), INDEX(count_array,,5))&
    REPT(INDEX(grades,6), INDEX(count_array,,6))
  ),
  // 拆分字符串为5列(对应5门作业)
  assignment_cols, ARRAYFORMULA(SPLIT(REGEXREPLACE(grade_strings, "(.)", "$1,"), ",")),
  // 计算每组合的平均值
  avg_scores, ARRAYFORMULA(MMULT(count_array, scores)/total_assignments),
  // 合并结果:5列评分 + 平均值列
  {assignment_cols, avg_scores}
)

公式说明

  1. 定义基础数据:grades是评分等级列表,scores是对应分数,可根据你的实际规则调整(比如如果F是0、E是1,就把scores改成{4,3,2,1,1,0})。
  2. 生成次数组合:通过嵌套SEQUENCE生成所有A-E的可能出现次数,再筛选出总和≤5的组合,补全F的次数(total_assignments - 其他等级次数和)。
  3. 生成评分字符串:用REPT函数根据次数重复对应等级,拼接成排序后的字符串(确保同一组的排列只会生成一次)。
  4. 拆分与计算平均值:把字符串拆分成5列对应作业,再通过矩阵乘法MMULT计算总分数,除以作业数得到平均值。

注意事项

  • 公式会生成252行结果(对应组合数C(5+6-1,6-1)=252),如果你的等级数量不同(比如只有A-F中的5个),只需调整grades和scores数组,公式会自动适配。
  • 如果使用Excel,由于函数支持差异,建议用VBA实现,或者简化为生成所有排列后去重(但效率较低)。

内容的提问来源于stack exchange,提问作者Bryce Towle

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 14:12:51