解题思路:
注意事项:
参考代码:
t,n=map(int,input().split()) ls=[[0,0]] for i in range(n): time,value=map(int,input().split()) ls.append([time,value]) dp=[[0 for i in range(t+1)] for j in range(n+1)] for i in range(1,n+1): for j in range(1,t+1): if j < ls[i][0]: dp[i][j] = dp[i-1][j] else: dp[i][j] = max(dp[i-1][j],ls[i][1]+dp[i-1][j-ls[i][0]]) print(dp[-1][-1])
0.0分
0 人评分
C二级辅导-同因查找 (C语言代码)浏览:592 |
剔除相关数 (C语言代码)浏览:1058 |
C语言程序设计教程(第三版)课后习题8.6 (C语言代码)浏览:565 |
【亲和数】 (C语言代码)浏览:530 |
【绝对值排序】 (C++代码)浏览:720 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:783 |
A+B for Input-Output Practice (V) (C语言代码)浏览:640 |
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:913 |
剪刀石头布 (C++代码)浏览:1811 |
矩阵转置 (C语言代码)浏览:855 |