D127455.AssignCookies题目链接455.AssignCookies题目分析给定两个数组,第一个数组代表每个容器的容量,第二个数组代表每个物品的数量.物品需要塞进容器里,但是有两个条件。条件一:一个容器只能塞入一种物品;条件二:一种物品只能塞入一个容器,但不需要装满。例如,当容器的大小为1,物品数量为3时,物品可以塞进容器,但剩下的2件物品不能塞进其他容器。尽可能装满所有容器,并返回装满的容器数。刚开始的解题思路,没注意到条件填不上,直接返回计算交集元素个数。首先,为了尽可能的满,减少浪费,需要对两个数组进行降序排列。否则容器中会有更多的缝隙。接下来,是时候开始分发物品了。因为分配的物品可以剩余,所以我们从物品数量数组开始,如果当前物品数量大于等于当前容器容量,则分配给它。如果更小,则意味着容器不能装满物品。分配成功后,直接开始分配下一项。最终代码$value){while(!is_null(key($g))){如果(current($g)<=$value){$total++;下一个($g);休息;}下一个($g);}}返回$总计;}}如果您觉得本文对您有用,欢迎用爱心募捐。
