
01背包(食堂)
发布日期:2021-05-15 00:45:52
浏览次数:24
分类:精选文章
本文共 1393 字,大约阅读时间需要 4 分钟。
??????????????????????????????????????5???????????????????
????
?????
- ???????????????5??
- ????????????????????????????
????????
- ??????????????????????????????5??
- ???????????????5??
- ????????????????
???????
- ???????
dp
?dp[s]
?????????s
????? - ??????????????
dp
??? - ???????
T
???T >= 5
????????????
????
import sysdef main(): for line in sys.stdin: n = int(line.strip()) if n == 0: break a = [] while len(a) < n: a.append(int(sys.stdin.readline())) m = int(sys.stdin.readline()) if m < 5: print(m) continue max_price = max(a) if a else 0 sum_a = sum(a) target = m + 5 + sum_a dp = [-1] * (target + 1) dp[0] = 0 for num in a: for j in range(target, num - 1, -1): if dp[j - num] != -1: if dp[j] < dp[j - num] + num: dp[j] = dp[j - num] + num best = -1 for j in range(5, target + 1): if dp[j] != -1 and dp[j] > best: best = dp[j] if best == -1: print(m) else: print(m - best)if __name__ == "__main__": main()
????
- ???????????????????
n=0
? - ??????????????
m
??5?????m
? - ??????????????
dp
????????????????? - ???????????????????????
dp
??? - ?????????????
T
???T >= 5
???????????????
?????????????????????????????????
发表评论
最新留言
感谢大佬
[***.8.128.20]2025年04月10日 16时20分35秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Arm Mbed OS 更适合大学实训平台
2019-03-12
MbedOS 设备中的模数转换(ADC)
2019-03-12
MbedOS+MQTT+TICK 栈构建企业大数据平台
2019-03-12
C++ influxdb 客户端
2019-03-12
关于编程能力的思考
2019-03-12
【vue】setInterval的嵌套实例
2019-03-12
【SpringBoot】如何配置热部署
2019-03-12
【rabbitMQ】04 如何实现高可用?
2019-03-12
【自考】之信息资源管理(一)
2019-03-12
C# 文本框限制大全
2019-03-12
setup facatory9.0打包详细教程(含静默安装和卸载)
2019-03-12
ionic4 路由跳转传值
2019-03-12
CSDN 怎么写出好看的博客
2019-03-12
ENDC含义
2019-03-12
Java基本概念:方法
2019-03-12
pwn题shellcode收集
2019-03-12
使用docker搭建nfs实现容器间共享文件 nfs server nfs client
2019-03-12