1 条题解
-
1
#include<bits/stdc++.h> using namespace std; int w[105],val[105]; int dp[105][1005]; int main(){ int t,m,res=-1; cin>>t>>m; for(int i=1;i<=m;i++){ cin>>w[i]>>val[i]; } for(int i=1;i<=m;i++) for(int j=t;j>=0;j--) { if(j>=w[i]){ dp[i][j]=max(dp[i-1][j-w[i]]+val[i],dp[i-1][j]); } else{ dp[i][j]=dp[i-1][j]; } } printf("%d",dp[m][t]); return 0; }
- 1
信息
- ID
- 634
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 2
- 标签
- 递交数
- 57
- 已通过
- 46
- 上传者