(一)01背包变形
例1:分西瓜
已知有一堆西瓜,请帮忙将这一堆西瓜分成两堆,已知每个西瓜的重量,现在要求分成两堆的西瓜的重量的差最小
输入描述
第一行输入西瓜数量N (1 ≤ N ≤ 20)
第二行有N个数,W1, …, Wn (1 ≤ Wi ≤ 10000)分别代表每个西瓜的重量
输出描述
输出分成两堆后的质量差
样例输入
5 5
这篇博客介绍了如何使用C++解决01背包问题的一个变形——分西瓜问题。通过将问题转化为求背包容量为总重一半时的最大重量,从而找到使两堆西瓜质量差最小的方案。博客提供了输入描述、输出描述以及样例输入和输出。
已知有一堆西瓜,请帮忙将这一堆西瓜分成两堆,已知每个西瓜的重量,现在要求分成两堆的西瓜的重量的差最小
第一行输入西瓜数量N (1 ≤ N ≤ 20)
第二行有N个数,W1, …, Wn (1 ≤ Wi ≤ 10000)分别代表每个西瓜的重量
输出分成两堆后的质量差
5 5
1150
989
2336

被折叠的 条评论
为什么被折叠?