蓝桥杯Java ABC组 AcWing P1022 宠物小精灵之收服

题目链接:

https://www.acwing.com/problem/content/description/1024/

#01背包

典型的二维 01 背包问题

但求"收服 C 个小精灵时皮卡丘的剩余最多体力值"时卡了一下

当时在想这二维费用怎么不平衡之类的,其实没有这么复杂

求出最大值后,就再遍历一遍,找出最小消耗的体力

代码

cpp 复制代码
#include <iostream>
#include <algorithm>

using namespace std;

const int N = 1010, M = 510;

int n, V1, V2;
int f[N][M];

int main()
{
    cin >> V1 >> V2 >> n;
    for (int i = 0; i < n; i ++ )
    {
        int v1, v2;
        cin >> v1 >> v2;
        for (int j = V1; j >= v1; j -- )
            for (int k = V2 - 1; k >= v2; k -- )
                f[j][k] = max(f[j][k], f[j - v1][k - v2] + 1);
    }

    cout << f[V1][V2 - 1] << ' ';
    int k = V2 - 1;
    while (k > 0 && f[V1][k - 1] == f[V1][V2 - 1]) k -- ;
    cout << V2 - k << endl;

    return 0;
}
相关推荐
我爱Jack16 分钟前
ObjectMapper 在 Spring 统一响应处理中的作用详解
java·开发语言
捡田螺的小男孩25 分钟前
京东一面:接口性能优化,有哪些经验和手段
java·后端·面试
小白杨树树31 分钟前
【SSM】SpringMVC学习笔记8:拦截器
java·开发语言
艾露z33 分钟前
深度解析Mysql中MVCC的工作机制
java·数据库·后端·mysql
冷心笑看丽美人34 分钟前
Spring MVC 之 异常处理
java·开发语言·java-ee·spring mvc
神仙别闹35 分钟前
基于Java(SpringBoot、Mybatis、SpringMvc)+MySQL实现(Web)小二结账系统
java·spring boot·mybatis
超级小忍35 分钟前
Java集合中Stream流的使用
java·开发语言
趁你还年轻_1 小时前
Spring 官方推荐构造函数注入
java·spring·log4j