题解 1107: 纪念品分组

来看看其他人写的题解吧!要先自己动手做才会有提高哦! 
返回题目 | 我来写题解

筛选

纪念品分组

摘要:解题思路:w=int(input())n=int(input())a=[]for i in range(n):    x=int(input())    a.append(x)a=sorted(a,r……

我不知道这个叫什么算法,但是我能保证你听懂(c语言代码)

思路其实很简单。我先把那几个数按降序(从大到小)排序。为什么要降序排序呢,因为这样才方便后面的操作。接下来我定义两个数字(right,left)来分别代表数组的第一个数和最后一个数,因为我已经事先排序过了,第一个肯定是最大值,最后一个肯定是最小值。

1107: 纪念品分组

摘要:解题思路:动态数组:vector<int>p(n)sort 对数组进行降序排序两重遍历,只要两项加起来小于等于w,就分为一组已分配好的纪念品置成-1(价格不会达到的数)第一重遍历会遇到已经分配好的纪念……

纪念品分组(贪心思维)

摘要:> 直接排序,让价格从低到高,然后价格高的和低的一起,如果没有超过上限,就一组,cnt++> 如果超过上限,价格高的一组,cnt++```cpp#include using nam……