关注
int main()
{
int n;
cin>>n;
vector<vector<int>> vv(n);
vector<vector<int>> dp(n);
for(int i=0;i<n;i++){
dp[i].resize(n,-1);
}
for(int i=0;i<n;i++){
vv[i].resize(4);
for(int j=0;j<4;j++){
cin>>vv[i][j];
}
}
//dp[i][j]表示的是: 已经选了j个red的情况下,从第i回合开始选红色或绿色,一直选,直到所有回合都选择完成所能获得的最大饱腹量
for(int i=n-1;i>=0;i--){
for(int j=0;j<=i+1;j++){
if(i==n-1){
//只剩下最后一个回合,返回两者最大值即可
dp[i][j]=max(j*vv[i][0]+(i-j)*vv[i][1],j*vv[i][2]+(i-j)*vv[i][3]);
}
else{
//此时到达的第i回合选红色的情况下,选到最后所能获取的最大饱腹量
int sr=j*vv[i][0]+(i-j)*vv[i][1]+dp[i+1][j+1];
//此时到达的第i回合选绿色的情况下,选到最后所能获取的最大饱腹量
int sg=j*vv[i][2]+(i-j)*vv[i][3]++dp[i+1][j];
//取两者最大值
dp[i][j]=max(sr,sg);
}
}
}
//返回从第0回合开始取,红色已经选了0个的情况下所能获取的最大饱腹量即是答案
cout<<dp[0][0]<<endl;
return 0;
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 牛客吐槽大会 #
26533次浏览 327人参与
# 一份好的简历长什么样? #
23222次浏览 424人参与
# 材料专业就业可以去哪些企业岗位 #
55050次浏览 376人参与
# 为了减少AI幻觉,你注入过哪些设定? #
8185次浏览 221人参与
# 在大厂上班是一种什么样的体验 #
16003次浏览 226人参与
# 机械人避雷的岗位/公司 #
45115次浏览 321人参与
# 你的mentor是什么样的人? #
51745次浏览 742人参与
# 论秋招对个人心气的改变 #
16963次浏览 256人参与
# 牛客AI体验站 #
9959次浏览 235人参与
# 我和mentor的爱恨情仇 #
106855次浏览 970人参与
# 程序员找工作至少要刷多少题? #
25226次浏览 320人参与
# 本周投递记录 #
842444次浏览 12226人参与
# 晒晒你司的新年福利 #
10783次浏览 191人参与
# 制造业的秋招小结 #
142320次浏览 2086人参与
# 应届生进小公司有什么影响吗 #
119090次浏览 1162人参与
# AI Coding的使用心得 #
6786次浏览 142人参与
# 一张图晒一下你的AI员工 #
6948次浏览 153人参与
# 我现在比当时_,你想录用我吗 #
10737次浏览 160人参与
# 通信/硬件求职避坑tips #
140079次浏览 1087人参与
# 秋招想进国企该如何准备 #
125572次浏览 617人参与
查看16道真题和解析