洛谷P1802 5 倍经验日(01背包裸题)

简介: 算法

题面如下:机票

4.png

抽象出来就是个01背包裸题,选择当前需要的花费就是药水,然后对应增加价值,我提前预处理失败的可获得经验直接加,然后对应的赢获得的价值就是b-a。

#include<bits/stdc++.h>
using namespace std;
const int maxn=1e4;
long long  v[maxn],w[maxn],dp[maxn];
int main()
{
    long long ans=0;
    int n,x,i,j,t;
    cin>>n>>x;
    for(i=0;i<n;i++)
    {
        int a,b,c;
        cin>>a>>b>>c;
        ans+=a;
        v[i]=b-a;w[i]=c;
    }
    for(i=0;i<n;i++)
    {
        for(j=x;j>=w[i];j--)
            dp[j]=max(dp[j],dp[j-w[i]]+v[i]);
    }
    dp[x]+=ans;
    cout<<dp[x]*5<<endl;
    return 0;
}
相关文章
【动态规划刷题 4】礼物的最大价值&&下降路径最小和
【动态规划刷题 4】礼物的最大价值&&下降路径最小和
|
6月前
|
搜索推荐 算法 C++
蓝桥杯分糖果、最小化战斗力差距、小蓝零花钱
这是一个关于算法问题的集合,包括三个不同的任务: 1. **分糖果**:肖恩有不同种类的糖果要分给学生,目标是使得到糖果字符串的字典序最大且尽量小。给定糖果种类数和一个初始字符串,输出能达到的最小字典序的最大值。 2. **最小化战斗力差距**:小蓝需要将队员分为两组,每组战斗力差距最小。给定队员数量和战斗力值,找出最小的战斗力差距。 3. **小蓝的零花钱**:小蓝要在序列中分割偶数和奇数,每次分割代价是两端元素差的绝对值。目标是在预算内确定最多能进行多少次这样的分割。 每个问题都提供了输入输出示例和相应的C++代码片段来解决这些问题。
|
7月前
蓝桥备战--分糖果OJ2928 贪心 分类讨论
蓝桥备战--分糖果OJ2928 贪心 分类讨论
72 0
|
7月前
|
人工智能 算法 Java
K倍区间(蓝桥杯每日一题)
K倍区间(蓝桥杯每日一题)
66 0
|
人工智能
蓝桥杯:k倍区间
蓝桥杯:k倍区间
63 0
|
算法 C++
【每日算法Day 109】五大解法,带你深入了解完全背包方案数
【每日算法Day 109】五大解法,带你深入了解完全背包方案数
109 0
【蓝桥杯集训·每日一题】AcWing 3625. 幂次方
文章目录 一、题目 1、原题链接 2、题目描述 二、解题报告 1、思路分析 2、时间复杂度 3、代码详解 三、知识风暴 快速幂
69 0
(数论)蓝桥杯AcWing 1205. 买不到的数目
(数论)蓝桥杯AcWing 1205. 买不到的数目
53 0
PTA 7-2 数字之王 (20 分)
给定两个正整数 N 1 ​ <N 2 ​ 。把从 N 1 ​ 到 N 2 ​ 的每个数的各位数的立方相乘,再将结果的各位数求和,得到一批新的数字,再对这批新的数字重复上述操作,直到所有数字都是 1 位数为止
131 0