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

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;
}
相关推荐
练习时长一年18 小时前
LeetCode热题100(爬楼梯)
算法·leetcode·职场和发展
朔北之忘 Clancy18 小时前
2020 年 6 月青少年软编等考 C 语言一级真题解析
c语言·开发语言·c++·学习·算法·青少年编程·题解
_codemonster18 小时前
计算机视觉入门到实战系列(九) SIFT算法(尺度空间、极值点判断)
深度学习·算法·计算机视觉
sinat_2869451919 小时前
AI Coding LSP
人工智能·算法·prompt·transformer
星马梦缘19 小时前
算法与数据结构
数据结构·c++·算法·动态规划·克鲁斯卡尔·kahn
2501_9434691519 小时前
【无标题】
数据结构·算法
_codemonster19 小时前
计算机视觉入门到实战系列(八)Harris角点检测算法
python·算法·计算机视觉
Snow_day.19 小时前
有关排列排列组合(1)
数据结构·算法·贪心算法·动态规划·图论
dora20 小时前
【开发火星地平线辅助】智商不够,编程来凑
算法
im_AMBER20 小时前
Leetcode 100 在链表中插入最大公约数
数据结构·c++·笔记·学习·算法·leetcode·链表