题解 | #采药#

采药

https://www.nowcoder.com/practice/d7c03b114f0541dd8e32ce9987326c16

t, n = map(int, input().split(" "))#01背包
time = [0 for i in range(n)]
v = [0 for i in range(n)]
dp = [0 for i in range(t + 1)]
for i in range(n):
    time[i], v[i] = map(int, input().split(" "))
for i in range(n):
    for j in range(t, time[i] - 1, -1):
        dp[j] = max(dp[j], dp[j - time[i]] + v[i])
print(dp.pop())

全部评论

相关推荐

魔法恐龙:这真得给个机会,面试的时候问问不吃饭78.5h怎么做到的
点赞 评论 收藏
分享
淬月星辉:专利是什么?至少描述一下吧,然后把什么计算机二级、普通话这种拉低格调的证书删掉,不然hr以为你没东西写
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务