HDU 2159 FATE

双目立体成像(一)双目图片生成点云 利用左右目图片生成点云 阅读详情

传送门

完全背包,有两维容量。

它说的耐久度是根据杀怪来不断减少的,当耐久度降到0或者0以下时就不玩了,但有一个非常重要的地方没有说清。

这个判断是在每杀一只怪之前判断还是每杀一只怪之后判断???

下面所叙述的一切以及AC代码都是建立在 “之前判断,且降到0判断为可杀、降到0以下判断为不可杀” 的基础上。


所以这个耐久度就等价于一个容量的限制,杀的所有怪的耐久度之和要小于等于这个容量。然后还有一个杀怪总数的限制。在此基础下求可获得的最大经验。

最后问能升级的话(经验值大于等于N)最多剩多少容量(耐久度)没用,那相当于求最少用多少容量就能升级。
通过dp[M][S]的值可以判断能不能升级,但是,dp[M][S]这个状态并不一定M都被恰好用完,所以要从小到大枚举这个容量,第一个大于等于N的dp值所对应的容量值即为答案。

另:这道题还写了一下完全背包的小优化(出自《背包九讲》)。


#include <cstdio>
#include <iostream>
#include <algorithm>
#include <vector>
#include <cstring>
#include <string>
#include <queue>
using namespace std;                         // 二维容量的完全背包,说实话真搞不懂

int dp[100][100];
int N, M, K, S;
int p[100];
int w[100];
bool valid[100];

void init()
{
	memset(dp, 0, sizeof dp);
	for (int i = 1; i <= K; i++)
		valid[i] = true;
}

int main()
{
next:
	for (; ~scanf("%d%d%d%d", &N, &M, &K, &S);)
	{
		init();
		for (int i = 1; i <= K; i++)
			scanf("%d%d", &p[i], &w[i]);

		for (int i = 1; i <= K; i++)
		{
			for (int j = i + 1; j <= K; j++)
			{
				if (p[i] > p[j] && w[i] < w[j])
					valid[j] = false;
				else if (p[i] < p[j] && w[i] > w[j])
					valid[i] = false;
			}
		}                                        // 完全背包的小优化(不适用于恰好装满)

		for (int i = 1; i <= K; i++)
		{
			if (!valid[i]) continue;             // 绝不能放在循环入口"i<=K"那里判断。。怎么越来越傻了
			for (int j = w[i]; j <= M; j++)      // 第一维容量 完全
			{
				for (int k = 1; k <= S; k++)     // 第二维容量 完全
				{
					dp[j][k] = max(dp[j][k], dp[j - w[i]][k - 1] + p[i]);
				}
			}
		}
		if (dp[M][S] < N)
		{
			printf("-1\n");
			continue;
		}
		for (int i = 0; i <= M; i++)
		{
			for (int j = 0; j <= S; j++)
			{
				if (dp[i][j] >= N)
				{
					printf("%d\n", M - i);
					goto next;                   // 跳多重循环
				}
			}
		}
	}

	return 0;
}
沉降预测算法-指数曲线法 沉降预测的指数曲线法原理和代码实现 阅读详情

相关推荐

Palantir解密:说人话,到底什么是“本体”?

笔者2018年在云计算公司开展政企数字化专项时,便意识到全面数字化进程背后存在大量未知领域,尤其是未来数字世界的底层架构如何构建这一关键问题。可惜因为种种原因,连那几个小专项最终都未能落地,也就无从深入了。近期看了很多有关Palantir的材料,倒觉得这像是新硅谷(区别于比尔盖茨、扎克伯格等主导的硅谷时代)交出的一份关于“数字世界底层架构”的答案,至于这个答案是否成立、有没有更优解、我们本土对标的版本是什么,可能都还待看。《Palantir解密》系列尝试通过解析Palantir,来系统回答这一问题。

SZSDQJC的博客 2157

HDU 2159:FATE ← 二维费用完全背包问题

二维费用完全背包问题是指在同时受两种资源总量限制的前提下,每种物品可无限制选取,在不超出两种资源上限的条件下追求总价值最大化的背包模型,其核心特征为双约束条件 + 物品无限取用,对应的动态规划实现需对两种费用均采用正序遍历。

hnjzsyjyj的专栏 278

汇编语言(第4版)王爽 课程设计2 详细实现(一、虚拟模式DOS运行篇)

由于虚拟模式的限制,我们编写的许多逻辑暂时不能被检验,而因为《汇编语言》编写时间较早,其所依赖的运行环境如今只能够依靠虚拟机来搭建。比如实模式DOS,搭建步骤比较繁琐,因此我将其它的部分放在下一篇文章中进行讲解。事实上,我们实现的程序属于《汇编语言》课程设计2中任务程序部分,其中的完整任务还涉及到将该任务程序安装到软盘等操作,这些也都需要在实模式下才能运行,所以统一放到下一篇文章进行实现。

m0_73327328的博客 2823

hdu 2159 FATE 解题报告

链接:http://acm.hdu.edu.cn/showproblem.php?pid=2159 Problem Description 最近xhd正在玩一款叫做FATE的游戏,为了得到极品装备,xhd在不停的杀怪做任务。久而久之xhd开始对杀怪产生的厌恶感,但又不得不通过杀怪来升完这最后一级。现在的问题是,xhd升掉最后一级还需n的经验值,xhd还留有m的忍耐度,每杀一个怪xhd会得到...

weixin_30384031的博客 707

【Bug已解决】Codex 报错 MCP client for context7 failed to start: program not found 解决方案

方案适用场景推荐指数改用绝对路径Windows 上最常见、最有效的解决方式⭐⭐⭐⭐⭐提前全局安装避免依赖 npx减少运行时网络下载的不确定性⭐⭐⭐⭐使用 .cmd 后缀Windows 平台快速尝试⭐⭐⭐⭐开启调试日志需要更精确定位失败原因⭐⭐⭐⭐统一封装启动脚本需要跨平台兼容多个 MCP 服务⭐⭐⭐报错的本质是Codex 启动 MCP 子进程时,无法正确定位配置文件中写的简写命令名对应的可执行文件,尤其容易发生在 Windows 平台上使用npx这类简写命令的场景。

一键难忘的博客 5814

go实现MQTT broker(附完整源码)

go实现MQTT broker(附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 575

FATE 【HDU - 2159】

题目链接 最近xhd正在玩一款叫做FATE的游戏,为了得到极品装备,xhd在不停的杀怪做任务。久而久之xhd开始对杀怪产生的厌恶感,但又不得不通过杀怪来升完这最后一级。现在的问题是,xhd升掉最后一级还需n的经验值,xhd还留有m的忍耐度,每杀一个怪xhd会得到相应的经验,并减掉相应的忍耐度。当忍耐度降到0或者0以下时,xhd就不会玩这游戏。xhd还说了他最多只杀s只怪。请问他能升掉这最后一级吗...

qq_41925919的博客 728

基于深度学习的柠檬等级检测系统 —— YOLOv8 + UI界面 + 数据集

本项目的目标是构建一个柠檬等级检测系统,通过深度学习模型自动检测柠檬的等级。自动检测柠檬等级:通过图像中的柠檬特征,自动判断其成熟度和质量。实时视频检测:通过摄像头实时监控柠檬的质量等级。用户友好的UI界面:为用户提供简洁直观的操作界面,支持图像上传、实时视频检测等功能。本项目展示了如何基于YOLOv8模型开发一个柠檬等级检测系统,结合PyQt5实现了用户友好的UI界面。通过该系统,用户可以快速上传柠檬图像并自动识别其等级,极大提升了检测效率和准确性。数据集的扩展。

YOLO 1112

HDU 2159-FATE(完全背包)

FATE Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 11420    Accepted Submission(s): 5407 Problem Description 最近xhd正在玩一款叫做FATE的游戏,为了得到

Some. 3405

EML 全面实践指南:把 SAP RAP 业务对象玩出工程化的稳定与优雅

本文面向掌握ABAP基础、正在实施RAP的开发者,深入讲解EML(Entity Manipulation Language)的核心用法。文章围绕READ ENTITIES、MODIFY ENTITIES、COMMIT ENTITIES三大语句,详细解析其语义、类型体系、事务机制及工程实践。重点内容包括:字段裁剪、派生类型、草稿控制、批量更新、事务缓冲与保存序列等关键技术点,并配合真实案例代码。旨在帮助开发者在SAP ABAP On-Premise和BTP环境中构建可维护、可演进的业务对象访问层,同时避免常见

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 329

RT-DETR改进策略【卷积层】| ECCV-2024 小波卷积WTConv 增大感受野,降低参数量计算量,独家创新助力涨点

本文记录的是利用模块优化的目标检测网络模型。的目的是在不出现过参数化的情况下有效地增加卷积的感受野,从而解决了在感受野扩展中的参数膨胀问题。本文将其加入到深度可分离卷积中,有效降低模型参数量和计算量,并二次创新,使模块更好地捕捉低频特征,增强网络性能。Wavelet Convolutions for Large Receptive Fields小波卷积及其改进的实现代码如下: 四、创新模块 4.1 改进点1⭐ 模块改进方法:加入(第五节讲解添加步骤)。添加后如下:模块改进方法:基于的(第五节讲解添加步骤)

Limiiiing的博客 1504

Hdu 2159 FATE

Hdu 2159 FATE(背包) 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2159 Problem Description: 最近xhd正在玩一款叫做FATE的游戏,为了得到极品装备,xhd在不停的杀怪做任务。久而久之xhd开始对杀怪产生的厌恶感,但又不得不通过杀怪来升完这最后一级。现在的问题是,xhd升掉最后一级还需n的经验值,xhd还留有...

weixin_43823753的博客 475

【导航理论&实战篇】四足机器人弹簧倒立摆(SLIP)动力学模型

认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长!本文先对四足机器人动力学模型-VMC、SLIP和浮动机体模型做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章四足机器人弹簧加载倒立摆(SLIP)动力学模型是一种用于描述和分析四足机器人在运动过程中动态特性的理论模型。这种模型将四足机器人的腿部简化为弹簧,而机器人的身体则被视为一个倒立摆,这样的抽象使得研究者能够更容易地分析和控制机器人的运动。提示:以下是本篇文章正文内容。

qq_35635374的博客 806

hdu 2159 FATE

hdu   2159   FATE(完全背包第一弹)                              题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2159 题目分析:用背包的思想考虑此题,那么怪就是物品,杀掉它就是装入背包。与之前做的简单0-1背包不同的是,每种怪有无数个(完全背包)、限制条件(cost)有两个(杀怪数量上限s和忍耐度)

slicer的技术交流栈 769

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

HDU2159.FATE-完全背包

HDU2159.FATE-完全背包 FATE Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 25399 Accepted Submission(s): 11757 Problem Description 最近xhd正在玩一款叫做FATE的游戏,为了得到极品装备,xhd在不停的杀怪做任务。久而久之xhd开始对杀怪产生的厌恶感,但又不得不通过杀

尹大人的博客 190

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

HDU2159 FATE(完全背包)

HDU2159 FATE(完全背包) HDU2159 FATE完全背包 题意 思路 AC代码 原题地址:http://acm.hdu.edu.cn/showproblem.php?pid=2159 题意 这是中文题,在此就不再赘述,自己看。 思路 这是一道二维完全背包问题,对于背包问题不太了解的推荐看一下背包九讲,讲的很不错。这里简单介绍一下完全背包,所谓完全背包...

HuiSeKongHuan的博客 524

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

hdu_2159_FATE(完全背包)

题目连接:hdu_2159_FATE 题意:完全背包的题意 题解:把杀敌数看成背包的容量,维护一个经验的最大值,我是多开一维来记录最大的忍耐度,当然你也可以直接开一位,并记录忍耐度,最后扫一遍 1 #include<cstdio> 2 #include<cstring> 3 #define F(i,a,b) for(int i=a;i<=b;i...

weixin_30487201的博客 148

hdu 2159 Fate(完全背包 最多取K件)

hdu 2159 Fate(完全背包 最多取K件) #define M 102 struct monster{ int v,cost; }f[M]; int m,n,K,need; int dp[M][M]; void solve() { CLS(dp,0); for(int i=0;i<n;i++) for(int j=f[i].cost;j<=m;j++)

程序员的冷浪漫 791

HDU 2159 FATE(完全背包:二维限制条件)

HDU 2159 FATE(完全背包:二维限制条件) http://acm.hdu.edu.cn/showproblem.php?pid=2159 题意: 最近xhd正在玩一款叫做FATE的游戏,为了得到极品装备,xhd在不停的杀怪做任务。久而久之xhd开始对杀怪产生的厌恶感,但又不得不通过杀怪来升完这最后一级。现在的问题是,xhd升掉最后一级还需n的经验值,xhd还留有m的忍耐度,每杀一个怪xhd会得到相应的经验,并减掉相应的忍耐度。当忍耐度降到0或者0以下时,xhd就不会玩这游戏。xhd还

code 1325

(完全背包 + 二维滚动数组)hdu 2159 FATE

题目 hdu2159 思路: 有两个限制要求,一个是忍耐度,一个是杀怪数,用一个二维数组做dp,第一维是杀怪数,第二维是忍耐度,剩下的就是完全背包的思路了。 代码 #include <bits/stdc++.h> #define DEBUG freopen("_in.txt", "r", stdin); freopen("_out1.txt", "w", stdout); using namespace std; const int MAXN = 110; int a[MAXN], b[MAXN

ymxyld的博客 353

FATE HDU - 2159(二维背包)

留

leekerian的博客 184

hdu2159 FATE(C语言)

C语言AC代码

sinat_39591298的博客 438

hdu 2159 FATE 【二维完全背包】

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2159 /* 题意: 最近xhd正在玩一款叫做FATE的游戏,为了得到极品装备,xhd在不停的杀怪做任务。 久而久之xhd开始对杀怪产生的厌恶感,但又不得不通过杀怪来升完这最后一级。现 在的问题是,xhd升掉最后一级还需n的经验值,xhd还留有m的忍耐度,每杀一个怪xh...

几许情愁的博客 204

FATE [HDU2159]

题目:FATE Problem Description 最近xhd正在玩一款叫做FATE的游戏,为了得到极品装备,xhd在不停的杀怪做任务。久而久之xhd开始对杀怪产生的厌恶感,但又不得不通过杀怪来升完这最后一级。现在的问题是,xhd升掉最后一级还需n的经验值,xhd还留有m的忍耐度,每杀一个怪xhd会得到相应的经验,并减掉相应的忍耐度。当忍耐度降到0或者0以下时,xhd就不会玩这游戏。xhd还说...

一只小蒟蒻的博客 263

hdu 2159 FATE

FATE Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 7363    Accepted Submission(s): 3398 Problem Description 最近xhd正在玩一款叫做FATE的游戏,为

搞么子小子 1128
上一篇: HDU 1203 I NEED A OFFER!
下一篇: HDU 1559 最大子矩阵
Crossing over
博客等级 码龄10年 6粉丝 113原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值