Question:
一位老师教一个班级的学生们四门课,分别是数学,音乐,英语和自然课,对于在上这些课程的学生们满足以下条件,每节课程只有3个学生,这个班任意两个学生至少一起上一门课程,计算该班最多有多少个学生符合上诉条件的分组可能。
分析题目:
1.任意两个学生至少一起上一门课
2.每门课只有三名学生
解题思路:
按两个学生分组,每门课程可有三个人参加则可有三对学生组合,四门课程一共可以有十二种学生组和,如果学生任意组队的数量超出十二种则判定失败。
代码:
function calcMaxStudentsCount(courses,limit){
const maxTeam = limit * (limit-1) * courses
for(let i = 2;;i++){
if(i*(i-1)>maxTeam) {
return i-1
}
}
}
console.log(calcMaxStudentsCount(4,3))