4 条题解
-
0
n,m=map(int,input().split()) l=[0]*5005 r=[0]*5005 v=[0]*5005 for i in range(n): l[i],r[i],v[i]=map(int,input().split()) for i in range(n): for j in range(n-i): if r[j]>r[j+1]: l[j],l[j+1]=l[j+1],l[j] r[j],r[j+1]=r[j+1],r[j] v[j],v[j+1]=v[j+1],v[j] dp=[0]*100005 i=1 for j in range(m+1): if j>0: dp[j]=dp[j-1] while i<=n and r[i]<=j: dp[r[i]]=max(dp[r[i]],dp[l[i]-1]+v[i]) i+=1 print(dp[m])
信息
- ID
- 952
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 8
- 标签
- (无)
- 递交数
- 85
- 已通过
- 15
- 上传者