贡献一道AAA游戏公司的onsite的面试题

原帖地址:mitbbs

给一个int的数组parties,每一个element也就是每一个party代表一组玩家,比如
parties[0]是3,代表这个party有3个玩家。然后给一个一场多人游戏最多可以容纳的
玩家数量的值maxHopperSize,要求从这个数组中选任意多party加和组成一个Hopper,
加和的玩家总数要满足小于等于maxHopperSize。然后同时给一个hopper的数目
hopperCount,问是否可以fill所有的玩家到给定数目的Hoppers。

所以方法的签名是:

bool(int[] parties, int maxHopperSize, int hopperCount)

比如parties是[2,3,2,4,3], maxHopperSize是8,hopperCount是2.那么返回的就是
true。
而如果parties是[3,3,3,1,2], maxHopperSize是4,hopperCount是3,那么返回就是
false。