找回密码
 立即注册
首页 业界区 业界 题解:洛谷-P8548 小挖的买花

题解:洛谷-P8548 小挖的买花

老僻贞 前天 20:35
挺明显的一道板子题。
题目大意

就是普通的二维费用背包,只是会给出 \(q\) 个询问,每个询问给出一个总价格和一个总新鲜值
我们需要求出在不同的要求下可以获得的最大美丽值
题目分析

回想一下,我们在做这类题目的时候,在计算出最终的答案的过程中,我们是不是也把每个状态的最优解也算出来了?所以,我们可以直接进行一次这样的预处理以获得全部状态的最优解,接下来输出就行了。
动态规划预处理

由于有两个需要注意的量,我们把动态规划数组设为两维的。
设 \(f_{i,j}\) 为使用 \(i\) 费用,新鲜值为 \(j\) 时的最大美丽值。易得方程:

\[f_{i,j}=\max(f_{i,j},f_{{i-cost_k},{j-fr_k}}+be_k)\]
代码实现

[code]#include#define int long longusing namespace std;int n,m,f[1005][1005],tmp1,tmp2;struct str{    int cost,fr,be;}q[505];signed main(){    scanf("%lld%lld",&n,&m);//输入数据    for(int j=0;j

相关推荐

您需要登录后才可以回帖 登录 | 立即注册