红蓝分组规则下可扩展的机组配对总数计算公式求解
合法配对计数通用公式
既定配对规则
- BLUE组成员配对范围:同组其他成员、所有RED组成员
- RED组成员配对范围:仅所有BLUE组成员,不可与同组成员配对
- 配对为无顺序组合,两人交换位置视为同一配对,仅计数1次
公式推导
首先定义两个变量:
b:BLUE组当前成员总数r:RED组当前成员总数
合法配对分为两类,分别计数后求和即可:
- BLUE组内部合法配对:属于无顺序的两两组合,计数为组合数公式
b*(b-1)/2(即从b人中选2人的不重复组合数) - BLUE与RED跨组合法配对:每个BLUE成员均可和任意RED成员配对,无重复计数,计数为
b*r
两类相加得到总合法配对数通用公式:
总合法配对数 = b*(b-1)/2 + b*r
可简化为:
总合法配对数 = b*(b + 2r - 1)/2
示例校验
代入题目给出的示例参数:BLUE组共2人(b=2),RED组共2人(r=2)
- BLUE组内部配对数:2*(2-1)/2 = 1,对应配对:Nik & Pat
- 跨组配对数:2*2 = 4,对应配对:Nik & Steve、Nik & Alex、Pat & Steve、Pat & Alex
- 总计数:1+4=5,和示例给出的合法配对总数完全一致。
注:此前使用的
=Blue((blue-1)red)公式逻辑存在偏差,既没有正确计算BLUE组内配对数,跨组配对的计算逻辑也存在错误,因此结果不准确。后续两组新增成员时,只需更新变量b和r的数值代入公式即可得到正确结果。
内容的提问来源于stack exchange,提问作者Just a pilot
相关产品推荐
相关产品推荐

