公平的意思应该就是任何两个人被分到一起的概率都是一样的。那这个概率是多少呢?
可以看;一千人两两分组,特定两人分到同一组的概率该如何计算? - 知乎
概率应该是1/99。
糖果分组的思路:
提前统计总人数和要分成的组数,准备相应的糖果。糖果的总数和总人数相同,糖果的口味或种类需要和组数相匹配。比如100人要分成5组,则准备100颗糖果,包含5种口味或种类,每种糖果各20个。
所以这儿保证公平的话,就是50种糖,每种两颗。
那么定义一个数组大小为100,元素为1,1,2,2,3,3…49,49,50,50。使用打乱数组的思路LeetCode第 384 题:打乱数组(C++)_zj-CSDN博客,将数组打乱,最后数字相同的两个下标组合在一起就可以保证公平了。