AC,每次选择人数最大的三个角色, 然后组成一组, 然后每个角色减1,放回数组重新排序(直接排序应该超时,我用的优先队列), 然后再选择人数最多的, 如此往复。 下面是AC的代码, 注意,每次只能减1个人。 为什么每次减1呢, (那么你们为什么要每次选最大的呢?) 减1是因为最大的减1之后,会变成不是最大的。 下面的样例: 1 1 2 2 2 3 [2, 2, 2, 3] [2, 1, 1, 2] [1, 1, 0, 1] [0, 0, 0, 0] 每次减1,答案是3. 如果直接减去2,答案是2,并不是最优的分配。 #in...