A2608 | 纪念品分组
来源NOIP普及组 / 2007
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
NOIP2007 普及组 T2元旦快到了,校学生会让乐乐负责新年晚会的纪念品发放工作。为使得参加晚会的同学所获得 的纪念品价值相对均衡,他要把购来的纪念品根据价格进行分组,但每组最多只能包括两件纪念品, 并且每组纪念品的价格之和不能超过一个给定的整数。为了保证在尽量短的时间内发完所有纪念品,乐乐希望分组的数目最少。
你的任务是写一个程序,找出所有分组方案中分组数最少的一种,输出最少的分组数目。
你的任务是写一个程序,找出所有分组方案中分组数最少的一种,输出最少的分组数目。
输入格式
共 $n+2$ 行:
第一行包括一个整数 $w$,为每组纪念品价格之和的上限。
第二行为一个整数 $n$,表示购来的纪念品的总件数 $G$。
第 $3\sim n+2$ 行每行包含一个正整数 $P_i$ 表示所对应纪念品的价格。
第一行包括一个整数 $w$,为每组纪念品价格之和的上限。
第二行为一个整数 $n$,表示购来的纪念品的总件数 $G$。
第 $3\sim n+2$ 行每行包含一个正整数 $P_i$ 表示所对应纪念品的价格。
输出格式
一个整数,即最少的分组数目。
输入输出样例
输入 #1
100 9 90 20 20 30 50 60 70 80 90
输出 #1
6
$50\%$ 的数据满足:$1\le n\le15$。
$100\%$ 的数据满足:$1\le n\le3\times10^4$,$80\le w\le200$,$5 \le P_i \le w$。
$100\%$ 的数据满足:$1\le n\le3\times10^4$,$80\le w\le200$,$5 \le P_i \le w$。
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?