C# 根据条件将人员信息随机分组

将excel中的N个人导入到datagridview1中,将前n个人随机分到n个组中担任组长,显示到datagirdview2中的第一列中,剩下的N-n个人随机分到n个组中,分组的时候应该保证每个组中男女比例接近,每个组中的籍贯比例接近。本人是初学者,有没有专家提供一下思路,如能提供代码,更是感激不尽 !

img

img

准备10个List.
用Linq事先将籍贯、男、女区分好。
取随机数。取一个,就从集合中Remove();
然后一个一个循环塞到结果集里。