【发布时间】:2019-05-29 07:46:19
【问题描述】:
以前有人问过类似的问题,但没有以我可以使用的方式回答。
我有 3、4、5 和 6 人一组,每组应该有 50% 的男孩和 50% 的女孩。用户确定每组的数量以及男孩和女孩的数量。
例如:12 个女孩,15 个男孩,1*3、2*4、2*5 和 1*6 组。
我已经有一个Random 的实例。我现在如何才能将随机选择的男孩/女孩平均分配到组中?
男孩和 4 人组随机:
//for each group of 4
for (int i = 0; i < tischgruppenVierer; i++)
{
//only do this two times because 50% boys
for (int j = 0; j < 4/2; j++)
{
var picked = namesBoys[random.Next(0, namesBoys.Count())];
namesBoys.Remove(picked); //no duplicates
picked = new TischVier().student;
}
}
还有班级TischVier:
public class TischVier
{
public string student;
}
我希望这对你来说足够了,因为我为每个组都硬编码了它。
我感谢每一个想法,因为我接近绝望。
【问题讨论】:
-
您的要求仍需澄清。尝试编辑您的问题并阐明您的需求。您的代码没有帮助。
-
你怎么能用 50% 的男孩和 50% 的女孩来填充一组 3 人?
-
@DStanley 这是我的下一个问题
-
你不能随机排列男孩名单和女孩名单,然后以交替的方式从每个名单中挑选一个吗? (顺便说一句,这也解决了上述问题)
-
我假设奇数组会有更多的性别和更多的成员?例如如果男孩多于女孩,那么 3 人一组将是 (b,b,g),而 5 人一组将是 (b,b,b,g,g)?