本文迁移自老博客,原始链接为 https://seven.blog.ustc.edu.cn/usacomixing-milk/
给出需要牛奶的总数,提供牛奶的农民个数,每个农民的牛奶的单价和数量,求买到所需的牛奶所要的最小费用。 解法:贪心,将所有的牛奶按价格升序排序,然后从低到高买入,直到买够所需数量为止。 贪心的证明: 1.贪心选择性质:假设在求最优解时,在某次选择时,买了价格不是最低的牛奶,那么把这次买的牛奶换成价格最低的牛奶,所得最终结果至少不会比现在的最优解差,那么所得的解必然也是最优解。 2.最优子结构:假设求最优解时先买了价格最低的牛奶,则剩余问题的解必然也是剩余问题的最优解,否则,必然存在一个剩余问题的最优解,用这个解替换原剩余问题的解,会得到一个比原问题更优的解,与原问题解是最优解矛盾。