首页 > 其他分享 >P1802 5 倍经验日: 动态规划

P1802 5 倍经验日: 动态规划

时间:2024-11-06 19:10:59浏览次数:1  
标签:use le int win 经验 P1802 absi2011 动态 规划

5 倍经验日

题目背景

现在乐斗有活动了!每打一个人可以获得 5 倍经验!absi2011 却无奈的看着那一些比他等级高的好友,想着能否把他们干掉。干掉能拿不少经验的。

题目描述

现在 absi2011 拿出了 $x$ 个迷你装药物(嗑药打人可耻…),准备开始与那些人打了。

由于迷你装药物每个只能用一次,所以 absi2011 要谨慎的使用这些药。悲剧的是,用药量没达到最少打败该人所需的属性药药量,则打这个人必输。例如他用 $2$ 个药去打别人,别人却表明 $3$ 个药才能打过,那么相当于你输了并且这两个属性药浪费了。

现在有 $n$ 个好友,给定失败时可获得的经验、胜利时可获得的经验,打败他至少需要的药量。

要求求出最大经验 $s$,输出 $5s$。

输入格式

第一行两个数,$n$ 和 $x$。

后面 $n$ 行每行三个数,分别表示失败时获得的经验 $\mathit{lose}_i$,胜利时获得的经验 $\mathit{win}_i$ 和打过要至少使用的药数量 $\mathit{use}_i$。

输出格式

一个整数,最多获得的经验的五倍。

样例 #1

样例输入 #1

6 8
21 52 1
21 70 5
21 48 2
14 38 3
14 36 1
14 36 2

样例输出 #1

1060

提示

【Hint】

五倍经验活动的时候,absi2011 总是吃体力药水而不是这种属性药。

【数据范围】

  • 对于 $10%$ 的数据,保证 $x=0$。
  • 对于 $30%$ 的数据,保证 $0\le n\le 10$,$0\le x\le 20$。
  • 对于 $60%$ 的数据,保证 $0\le n,x\le 100$, $10<lose_i,win_i\le 100$,$0\le use_i\le 5$。
  • 对于 $100%$ 的数据,保证 $0\le n,x\le 10^3$,$0<lose_i\le win_i\le 10^6$,$0\le use_i\le 10^3$。

【题目来源】

fight.pet.qq.com

absi2011 授权题目: 动态规划。

include

include

include

const int N = 1010;
int n, x;
long long f[N][N];//状态
int lose[N], win[N], use[N];
using namespace std;
int main()
{
cin >> n >> x;
for (int i = 1; i <= n; i++)
{
cin >> lose[i] >> win[i] >> use[i];
}

int res = 0;
for (int i = 1; i <= n; i++)//前i个人,总药量小于x的所有情况的最大值
{
	for (int j = 0; j <= x; j++)
	{
		f[i][j] = f[i - 1][j] + lose[i];
		if (j >= use[i])
		{
			f[i][j] = max(f[i - 1][j] + lose[i], f[i - 1][j - use[i]] + win[i]);
		}
	}
}
cout << (5 * f[n][x]);//输出










return 0;

}

标签:use,le,int,win,经验,P1802,absi2011,动态,规划
From: https://www.cnblogs.com/lixinran1006/p/18530860

相关文章

  • 数组,静态数组,动态数组
    数组是一个容器,可以存放多个元素这些元素的类型必须是一致的1.静态数组数据类型[]   数组名={元素1,元素2,元素3,.......} 通过数组的下标来引用数组中的元素默认数组下标从0开始到length-1。如果数组下标不在这个范围内会出现下标越界错误引用语法:      ......
  • 系统规划与管理——第五章 IT服务部署实施
    概述IT服务部署实施是衔接IT服务规划设计与IT服务运营的中间阶段,负责对服务组件进行客户化,并在充分满足客户要求的前提下,使用标准化的方法管理人员、资源、技术和过程,包括计划、实施和管理生产环境中的服务变更或新服务发布;同时,将规划设计中的所有要素完整地导入生产环境,为服......
  • 动态避障-图扑自动寻路 3D 可视化
    自动寻路是机器人导航的核心技术,其原理主要涉及机器人与环境之间的复杂信息交互与处理。在自动寻路过程中,机器人依靠先进的传感器系统,如高清摄像头、精密激光雷达和灵敏超声波装置,全方位感知周围环境。这些传感器能够实时捕捉并分析环境中的障碍物、地形变化和关键路标,为机器人提......
  • Python 使用 Selenium 如何抓取动态网页
    Python动态网页抓取:基础教程在如今的网络中,许多网站是“动态”的,即网页内容不是静态的HTML文件,而是由JavaScript动态生成的。这种动态网页在数据抓取中带来了一些挑战,因为传统的HTML抓取方法无法抓取JavaScript生成的内容。在本教程中,我们将详细介绍如何使用Pyth......
  • CSP/信奥赛C++完整学习规划(价值2万的csp-j完整课程体系)
    CSP/信奥赛C++课程完整学习视频一站式掌握信奥赛知识冲刺信奥赛拿奖课程购买后永久学习,不受限制!阶段一:《信奥赛C++语法基础》课程目标:轻松入门C++语法课程链接:https://edu.csdn.net/course/detail/39557阶段二:《信奥赛C++语法进阶》课程目标:快速进阶C++语法......
  • ARM-8 代码还原动态调试 pstree 之 out_char
    voidout_char(charc){/*403370: b00001c1 adrp x1,43c000<memcpy@GLIBC_2.17>403374: 9121c021 add x1,x1,#0x870//x1=0x43c870403378: 12001c00 and w0,w0,#0xff//w0=c&0xff40337c: b9401022 ldr w2,[x1,#16]//w2=[0x43c880......
  • 【高校教育新动态】创新学分:培养未来创新人才的新举措
    在当今这个快速变化的时代,创新已成为国家发展和个人成长的关键因素。为了适应这一趋势,我国高校纷纷推出了创新学分制度,旨在激发学生的创新潜能,培养具有创新精神和实践能力的高素质人才。今天,我们就来深入了解一下创新学分的内涵、构成以及申请流程。创新学分是什么?创新学分......
  • 基于条件风险价值CVaR的微网动态定价与调度策略(Matlab代码实现)
    ......
  • 基于条件风险价值CVaR的微网动态定价与调度策略(Matlab代码实现)
    ......
  • 鸿蒙项目实战(一):实现首页动态Tab
    需求:存在n个tab页,支持动态设置显示指定某几个tab实现如下:一、定义一个类,定义所有的tab页数据知识点:1、类使用export修饰,可以让其他模块引入2、类内字段设置 staticreadonly,只读静态字段3、图标文件存于src->main->resources->base->media目录下//首页菜单配置expor......