Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
147877 | 方竟成 | 训练赛 | C++ | 通过 | 100 | 0 MS | 268 KB | 410 | 2024-05-20 13:20:06 |
#include <bits/stdc++.h> using namespace std; int t[110],v[110],g[110],dp[1100][110]; int main() { int T,V,N; scanf("%d%d%d",&T,&V,&N); for(int i=1; i<=N; ++i) scanf("%d%d%d",&g[i],&t[i],&v[i]); for(int i=1; i<=N; ++i) for(int j=T; j>=t[i]; --j) for(int k=V; k>=v[i]; --k) dp[j][k]=max(dp[j][k],dp[j-t[i]][k-v[i]]+g[i]); printf("%d\n",dp[T][V]); return 0; }