10分求助,用的二维dp
查看原帖
10分求助,用的二维dp
1170071
Operation0701楼主2023/11/11 23:40
T,M = map(int,input().split())
dp = [[0]*T for _ in range(M)]
d = {}
for i in range(M):
    d[i] = tuple(map(int,input().split()))
maxvalue = 0
for i in range(M):
    for j in range(T):
        if d[i][0]-1 > j:
            dp[i][j] = dp[i-1][j]
        else:
            dp[i][j] = max(dp[i-1][j],dp[i-1][j-d[i][0]+1]+d[i][1])
        if dp[i][j] > maxvalue:
            maxvalue = dp[i][j]
print(maxvalue)

样例过了,但是只有10分

2023/11/11 23:40
加载中...