贪心算法

40 阅读1分钟

假设有n(1<=n<=100000)个孩子,现在给孩子们发放一些小饼干,每个孩子最多只能给一块饼干。每个孩子i有一个胃口值gi,这是能满足胃口的最小饼干尺寸,共有m(1<=m<=100000)块饼干,每块饼干j有一个尺寸s[j](1<=s[j]<=2^32-1)。如果g[i]<=s[j],那么将饼干j分给孩子i时该孩子会得到满足。分发的目标是尽可能满足最多数量的孩子,设计一个算法求这个最大数值。例如,g={1,2,3},s={1,1},尽管有两块小饼干,由于尺寸都是1,只能让一个胃口值为1的孩子满足,所以结果为1.