1 条题解
-
0dujiakai LV 8 @ 2018-07-29 09:57:07
#include<iostream>
using namespace std;
int n,pg,raun,p[151],r[151],c[151],s[151],f[101][101];
int main()
{
cin>>n>>pg>>raun;
for (int i=1;i<=n;i++){
cin>>p[i]>>r[i]>>s[i]>>c[i];
if (s[i]==0) s[i]=min(pg/p[i],raun/r[i]);
}for (int i=1;i<=n;i++)
for (int pi=pg;pi>=0;pi--)
for (int ri=raun;ri>=0;ri--)
for (int k=0;k<=s[i];k++)
if (pi>=p[i]*k && ri>=r[i]*k)
f[pi][ri]=max(f[pi][ri],f[pi-p[i]*k][ri-r[i]*k]+c[i]*k);
cout<<f[pg][raun];
}
- 1
信息
- 难度
- 8
- 分类
- (无)
- 标签
- 递交数
- 12
- 已通过
- 5
- 通过率
- 42%
- 上传者