他所在的餐厅每天早上都会买好n件食材(每种食材的数量可以视为无限),小明从到达餐厅开始就连续工作T时间。 每道菜肴的制作需要特定的一种食材以及一段时间,但是食材一旦放久就不新鲜了,菜的美味值会降低。 第i道菜肴有三个属性ai,bi,ci,ai是该菜肴的美味值,bi是该菜肴所选食材不新鲜的速率,如果在第t时刻完成...
思路分析 看到每一道菜有选和不选两种决策,我们想到了01背包。但是,和普通的01背包相比有个区别,就是做每一个决策是具有后效性的:选了i道菜会影响i+k道菜的价值,也就是说,菜的价值会和选的顺序有关。因此,我们需要利用一个贪心确定一个选择的顺序,令按照这一顺序选择答案最优。通过证明我们可以得到可以按照...
牛客 美味菜肴(背包) 容易看出是01背包,但是有个不同之处是,dp要求无后效性,而这题因为时间会影响答案,所以买的顺序是需要确定下来才能做背包dp 可以用贪心的方法,并且易证要按t/b排序。之后答案的顺序肯定是按所给的顺序取的,再做一遍01背包即可 View Code 没有人不辛苦,只有人不喊疼 标签: 动态规划 ...
#include<bits/stdc++.h>usingnamespacestd;constintN=1e6+10;constintmod=1e9+7; typedeflonglongll;structnode{ ll a,b,c;booloperator<(constnode &t )const{returnc*t.b>n>>m>>t;for(i=1;i<=n;i++){ cin>>b[i]; }for(i=1;i<=m;i++){intj; cin>>j>>s[i].a>>s[i].c; ...
来源:牛客网题目描述 小明是个大厨,早上起来他开始一天的工作。他所在的餐厅每天早上都会买好 nnn 件食材(每种食材的数量可以视为无限),小明从到达餐厅开始就连续工作 TTT 时间。每道菜肴的制作需要特定的一种食材以及一段时间,但是食材一旦放久就不新鲜了,菜的美味值会降低。第 iii 道菜肴有三个属性 ai,bi,...