2 solutions
-
1
#include<bits/stdc++.h> using namespace std; const int N=1010,M=210; int f[M][M]; int v[N],m[N],w[N]; int main() { int n,s,t; cin>>n>>s>>t; for(int i=1;i<=n;i++) { cin>>v[i]>>m[i]>>w[i]; } for(int i=1;i<=n;i++) { for(int j=s;j>=v[i];j--) { for(int k=t;k>=m[i];k--) { f[j][k]=max(f[j][k],f[j-v[i]][k-m[i]]+w[i]); } } } cout<<f[s][t]; return 0; }
-
-2
大好人
#include<bits/stdc++.h> using namespace std; const int N=1010,M=210; int f[M][M]; int v[N],m[N],w[N]; int main() { int n,V,W; cin>>n>>V>>W; for(int i=1;i<=n;i++) { cin>>v[i]>>m[i]>>w[i]; } for(int i=1;i<=n;i++) { for(int j=V;j>=v[i];j--) { for(int k=W;k>=m[i];k--) { f[j][k]=max(f[j][k],f[j-v[i]][k-m[i]]+w[i]); } } } cout<<f[V][W]; return 0; }
- 1
Information
- ID
- 212
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 5
- Tags
- # Submissions
- 28
- Accepted
- 13
- Uploaded By