比赛场次 606
比赛名称 SYOI 专题 6:折半搜索
比赛状态 已结束比赛成绩
开始时间 2024-04-25 19:00:00
结束时间 2024-04-30 22:00:00
开放分组 全部用户
注释介绍 折半搜索,又称为meet-in-the-middle。
主讲人:刘一澈
题目名称 送礼物
输入输出 giftgiving.in/out
时间限制 4000 ms (4 s)
内存限制 256 MiB
测试点数 10 简单对比
用户 结果 时间 内存 得分
Gravatar此账号已注销 AAATAATTTT 26.851 s 5.23 MiB 50

送礼物

★★☆   输入文件:giftgiving.in   输出文件:giftgiving.out   简单对比
时间限制:4 s   内存限制:256 MiB

【题目描述】

作为惩罚,$GY$被遣送去帮助某神牛给女生送礼物($GY$:貌似是个好差事)但是在$GY$看到礼物之后,他就不这么认为了。某神牛有$N$个礼物,且异常沉重,其中第$i$个礼物的重量是$G[i]$。但是$GY$的力气也异常的大(-_-b),他一次可以搬动重量和在$W$以下的任意多个物品。$GY$希望一次搬掉尽量重的一些物品,请你告诉他在他的力气范围内一次性能搬动的最大重量是多少。

【输入格式】

第一行两个整数,分别代表$W$和$N$。

以后$N$行,每行一个正整数表示$G[i]$。

【输出格式】

仅一个整数,表示达达在他的力气范围内一次性能搬动的最大重量。

【样例输入】

20 5
7
5
4
18
1

【样例输出】

19

【数据范围】

对于20%的数据 $N<=26$;

对于40%的数据 $W<=2^{26}$;

对于100%的数据 $N<=48,W<=2^{31}-1$

【来源】

《算法竞赛进阶指南》