蓝桥杯备考:贪心算法之纪念品分组

P1094 [NOIP 2007 普及组] 纪念品分组 - 洛谷

这道题我们的贪心策略就是每次找出最大的和最小的,如果他们加起来不超过我们给的值,就分成一组,如果超过了,就把大的单独成一组,小的待定

cpp 复制代码
#include <iostream>
#include <algorithm>
typedef long long LL;
using namespace std;

LL w,n;
const int N = 3e4+10;
LL a[N];
int main()
{
	cin >> w >> n;
	for(int i = 1;i<=n;i++) cin >> a[i];
	sort(a+1,a+1+n);
	LL l = 1,r = n;
	LL ret = 0;
	while(l<=r)
	{
		if(a[l]+a[r] <= w)
		{
			ret++;l++,r--;
		}
		else{
			ret++;r--;
		}
	}
	cout << ret << endl;
	
	
	
	return 0;
}
相关推荐
会员源码网10 小时前
使用`mysql_*`废弃函数(PHP7+完全移除,导致代码无法运行)
后端·算法
木心月转码ing11 小时前
Hot100-Day10-T438T438找到字符串中所有字母异位词
算法
HelloReader11 小时前
Wi-Fi CSI 感知技术用无线信号“看见“室内的人
算法
颜酱14 小时前
二叉树分解问题思路解题模式
javascript·后端·算法
qianpeng89715 小时前
水声匹配场定位原理及实验
算法
董董灿是个攻城狮1 天前
AI视觉连载8:传统 CV 之边缘检测
算法
AI软著研究员1 天前
程序员必看:软著不是“面子工程”,是代码的“法律保险”
算法
FunnySaltyFish1 天前
什么?Compose 把 GapBuffer 换成了 LinkBuffer?
算法·kotlin·android jetpack
颜酱1 天前
理解二叉树最近公共祖先(LCA):从基础到变种解析
javascript·后端·算法
地平线开发者2 天前
SparseDrive 模型导出与性能优化实战
算法·自动驾驶