社区讨论
蒟蒻问个题
灌水区参与者 2已保存回复 5
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 4 条
- 当前快照
- 1 份
- 快照标识符
- @m3tn2mqq
- 此快照首次捕获于
- 2024/11/23 11:57 去年
- 此快照最后确认于
- 2025/11/04 14:08 4 个月前
题:# 05-ZZ06-04-积分兑换(2)
题目描述
某学员积累了m积分,他想兑换玩具。兑换每个玩具需要一定的积分。现在已知有n个玩具,以及兑换每个玩具需要的积分。现在该学员准备去兑换玩具,他希望兑换掉的积分越多越好、兑换后剩余的积分越少越好,因为这些积分有期限,再不兑换就要清零了。问该学员最多可以花掉多少积分。
输入格式
输入数据第一行为两个正整数m和n,用空格隔开,m≤20000,n≤20,分别表示该学员的积分、玩具的数量。第二行为n个正整数,用空格隔开,范围为[1, 1000],表示兑换每个玩具需要的积分。
输出格式
输出数据占一行,为求得的答案。
样例 #1
样例输入 #1
CPP300 10
82 96 87 96 67 80 69 67 88 81
样例输出 #1
CPP299
样例 #2
样例输入 #2
CPP820 10
82 96 87 96 67 80 69 67 88 81
样例输出 #2
CPP813
提示
样例1说明:
兑换第1、5、7、10共4个玩具,或第1、7、8、10共4个玩具,或第2、5、7、8共4个玩具,或第4、5、7、8共4个玩具,总共花费299积分,剩余1积分。
样例2说明:
兑换10个玩具总共需要813积分,因此全部兑换,花掉813积分,还剩7积分。
本题出处
本题源自以下教材的测试题:王桂平, 林晓淅, 明正华, 等编著. C++趣味编程及算法进阶. 北京大学出版社, 2025年将出版.
本以为是sort,结果老师说是01背包,但蒟蒻算法才学到递归递推,求大佬帮助
回复
共 5 条回复,欢迎继续交流。
正在加载回复...