提交时间:2024-05-18 15:29:32

运行 ID: 147472

#include<bits/stdc++.h> using namespace std; int g[1005],t[1005],v[1005]; int f[1005][1005]; int main(){ int T,V,n; cin>>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){ f[j][k]=max(f[j][k],f[j-t[i]][k-v[i]]+g[i]);//得到分数,消耗体力和时间 } } } //最外层物品 cout<<f[T][V]; }