关注
其实没必要去求什么最大最小值,我们只关心能不能刚好凑够j, 所以初始化dp = [False] * (N+1) 状态转移时直接 dp[j] = dp[j] | dp[j-nums[i]] 即可。到这里优化不太大。 观察我们的 dp[j] = dp[j] | dp[j-nums[i]],其实我们只关心 dp中为False的数据就可以了,不必枚举每个j。 所以可以用 dict记录 为False的j,若dp[j-nums[i]]为true,pop出字典就行了。
1
相关推荐
查看5道真题和解析 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 26届春招投递记录 #
17538次浏览 127人参与
# 金融银行求职进展汇总 #
362972次浏览 1979人参与
# 我的求职总结 #
487912次浏览 6878人参与
# 拼多多工作体验 #
62983次浏览 439人参与
# 27届实习投递记录 #
86479次浏览 917人参与
# 宁德时代求职进展汇总 #
188423次浏览 710人参与
# 我是XXX,请攻击我最薄弱的地方 #
96775次浏览 642人参与
# 职场吐槽大会 #
361665次浏览 2308人参与
# 牛油的搬砖plog #
207863次浏览 1337人参与
# HR最不可信的一句话是__ #
37039次浏览 186人参与
# 美团秋招笔试 #
219037次浏览 1197人参与
# 什么专业适合考公 #
73644次浏览 479人参与
# AI让海力士市值突破9000亿美元 #
10315次浏览 126人参与
# 小厂实习有必要去吗 #
95321次浏览 454人参与
# 毕业后不工作的日子里我在做什么 #
274407次浏览 1743人参与
# 面试常问题系列 #
311266次浏览 4803人参与
# Vibe Coding 会干掉初级岗位吗? #
51985次浏览 332人参与
# AI Coding实战技巧 #
32183次浏览 400人参与
# 这些公司卡简历很严格 #
108136次浏览 497人参与
# 找工作中的意难平 #
1100418次浏览 6526人参与