甲乙丙丁四人参加乒乓球小组赛,每两人比赛一场,一共要赛多少场?
我们可以用组合的方法思考,四个人里选两个进行比赛。甲要和其他三人各赛一场,共3场;乙剩下两人各赛一场,共2场;丙只剩丁一人,赛1场。3+2+1等于6场。
我们可以用组合的方法思考,四个人里选两个进行比赛。甲要和其他三人各赛一场,共3场;乙剩下两人各赛一场,共2场;丙只剩丁一人,赛1场。3+2+1等于6场。
其实这就是经典的握手问题变体,或者说是单循环赛制的核心算法。C(4,2) = (4*3)/(2*1) = 6场。这种从固定点出发依次递减相加的方法(3+2+1)很直观,适合小学生理解;但要是人数变多,比如10个人,用组合数公式 C(n,2) 会方便很多,不用一个个加。
用加法拆解思路很清晰,3+2+1确实是这类问题的经典解法。不过如果人数多了,手动加就容易出错,其实直接套用组合公式 C(n,2) = n*(n-1)/2 会更通用快捷,下次遇到大规模数据可以试试这个公式。
这种列举法确实直观,3+2+1=6。不过要是人再多,比如10个人,挨着加就容易出错。其实直接用组合公式C(4,2) = 4*3/2=6会更简洁高效,适合快速计算。