【JZOJ 3487】剑与魔法【贪心】【堆】

【Python控制台小游戏】剑与魔法 主要功能展示 ,暂未使用面向对象,后面会发布面向对象编程版本。 阅读详情

题目大意:

题目链接:https://jzoj.net/senior/#main/show/3487
有 n n n条指令。每个指令有以下两种格式。

  • c   x c\ x c x:若执行该指令,则可以获得 x x x价值。
  • e   x e\ x e x:在接到这条指令之前不可以执行超过或等于 x x x次 c c c指令。

在忽略最后一个 e e e指令的前提下求最大价值。


思路:

居然是贪心。。。
对于每一个 e e e指令,我们不能执行超过 x x x个 c c c指令,那么很明显,肯定是要尽量多执行 c c c指令并且执行价值较大的指令。
那么就将读入到的指令放入一个小根堆里,每次当执行的 c c c指令超过 x x x条时,就删除小根堆的最小元素,这样就可以保证所得到的价值最大。
然后对于 c c c指令就直接将元素插入堆即可。


代码:

#include <cstdio>
#include <queue>
#include <iostream>
using namespace std;

int n,a[200100],sum;
char c;
priority_queue<int> q;

int main()
{
	scanf("%d",&n);
	for (int i=1;i<n;i++)
	{
		cin>>c>>a[i];
		if (c=='c') q.push(-a[i]);  
		//STL原本是大根堆,但是去成相反数之后原本更大的数就会更小,就达到了小根堆的目的。
		else
		 while (q.size()>=a[i]) q.pop();  //e指令,留下最大的x-1个元素
	}
	cin>>c>>a[n];
	if (q.size()<a[n])  //判断最后是否有x个元素
	{
		printf("-1");
		return 0;
	}
	while (q.size())
	{
		sum-=q.top();  //由于取了相反数,所以最后原本是相加,就变成了相减
		q.pop(); 
	}
	printf("%d\n",sum);
	return 0;
}
3D魔幻手游源码【新剑与魔法】最新整理Linux手工服务端+GM后台+工具+安卓苹果双端 3D魔幻手游【新剑与魔法】最新整理Linux手工服务端+GM后台+工具+安卓苹果双端 视频安装教程在源码压缩包内 仅供研究学习使用! 立即下载

相关推荐

智驾系统分层架构:从传感器到执行器的全链路解析

本文深入解析了智能驾驶系统的分层架构,从传感器数据采集融合、应用层决策到车辆管理层执行,完整呈现了从感知到控制的全链路工作流程。文章重点阐述了架构设计的核心优势在于接口标准化与模块解耦,以ACC和LKA协同场景为例,说明了各层级如何通过清晰分工与高效协作,实现复杂系统的可靠、灵活与易于升级。

weixin_29219189的博客 399

堆解决贪心问题

【代码】堆解决贪心问题。

yanerhao的专栏 425

新手入门机器学习案例(附源代码)

无

guguo666的博客 6656

10.27T1 堆贪心

#3859 数组 描述 Peter喜欢玩数组。NOIP这天,他从Jason手里得到了大小为n的一个正整数数组。 Peter求出了这个数组的所有子段和,并将这n(n+1)/2个数降序排序,他想知道前k个数是什么。 输入 输入数据的第一行包含两个整数 n 和 k。 接下来一行包含 n 个正整数,代表数组。 输出 ...

weixin_34037173的博客 259

SystemC实战:用C++搞芯片建模的5个典型场景(含代码示例)

本文通过五个典型实战场景,详细介绍了如何使用SystemC这一基于C++的硬件建模库进行芯片设计与系统级建模。内容涵盖从基础并发模块构建、事务级总线建模、跨时钟域验证,到与ModelSim协同仿真及多核系统性能探索,并提供了完整的代码示例,帮助软件工程师利用熟悉的C++工具链高效参与硬件架构设计与验证。

weixin_29191761的博客 315

LT码与Raptor码的性能仿真

从数据分析看来,在数据块大小较小时(100 - 200 左右 ),LT 码和 Raptor 码的平均冗余符号数量差距相对较小,但 LT 码的冗余符号数量始终高于 Raptor 码。现在采用MATLAB进行仿真,直观展示不同数据块大小下,两种解码方式的解码时间差异.如图4.1所示,LT解码(绿色圆点折线)LT 解码方式的解码时间随数据块大小的变化情况。从实际应用的角度来看,LT码由于其简单的编码机制,适用于资源受限或对编码效率要求较高的场景,但其较高的解码复杂度限制了其在一些实时性要求较高的应用中的使用。

道亦无名 1136

贪心与堆的优化

1.问题类型 如果题目中的问题涉及最多个数时,我们需要去观察是不是不管解的大小, 他对于最后Ans的值的大小的影响都是一样的,那么因为他的影响都是一样的, 我们就可以去寻找最优满足的条件,这里就可以用贪心来求满足情况。 2.堆优化 堆在这里的重要作用有两个一个是加速(logN),一个是方便存储和比较。 一个堆,我们把耗费最大/最小的放在堆顶,那么也就意味着, 我们可以通过堆来对它

KingBenQi的博客 523

医疗AI Agent实战:从零搭建一个能看病的智能助手(附完整代码)

本文详细介绍了如何从零搭建一个医疗AI Agent智能助手,涵盖核心架构设计、症状推理引擎开发、安全与合规实现以及系统集成等关键环节。通过完整的代码示例和实战案例,帮助开发者快速构建具备医疗咨询能力的智能Agent,提升医疗服务的效率和质量。

ss78901的博客 467

nssl1142,jzoj3487-剑与魔法【堆,贪心】

正题 纪中题目链接:https://jzoj.net/senior/#main/show/3487 题目大意 有两个东西 一个是表示可以选择这个东西,然后加x的价值。 一个是在这个操作之前不可以超过x个东西。 求最大价值 解题思路 我们考虑每个不能超过的操作,我们留下价值最大的。我们可以用这个思路,先将能装的装了,然后到达第二个操作就留下价值最大的。 我们可以用一...

QuantAsk 372

cuRobo 入门教程(二)基于CUDA的机器人运动规划加速库

cuRobo是一款基于CUDA加速的机器人算法库,提供正向/逆向运动学、碰撞检测、数值优化等核心功能,支持在NVIDIA Jetson Orin等平台上实现毫秒级运动规划。该库创新性地采用并行轨迹优化技术,结合nvblox工具实现深度摄像头避障功能,并通过多层ESDF结构处理动态障碍物。性能测试显示,在RTX 6000 Ada显卡上可实现99.85%的成功率,平均规划时间仅39毫秒。cuRobo还提供Python API支持神经网络集成,并具备批量环境处理能力,特别适用于工业机器人应用场景。最新版本通过算法

2506_90492529的博客 1296

14、Java 中 TAF 和 FCF 的使用及 Oracle 数据库升级与迁移指南

本文详细介绍了Java中实现高可用性的TAF(透明应用故障转移)和FCF(快速连接故障转移)技术,以及如何将Oracle 9iR2 RAC环境升级到10gR2 RAC,并将数据从OCFS迁移到ASM。通过示例代码和操作步骤,帮助开发者和数据库管理员更好地应对数据库故障和数据迁移问题,提升系统的可用性和性能。

egg99的博客 110

JZOJ3487 剑与魔法

Description   万老师听说某大国很流行穿越,于是他就想写一个关于穿越的剧本。  闲话休提。话说老师穿越到了某一个剑与魔法的大陆。因为如此这般,所以老师从维娜艾那里得到了预言。老师一共被告知了若干件按顺序结算的事件。这些事件分为两类:战役事件(CASE)、穿越回去事件(END)。战役事件可以选择是否参加,参加了之后会获得一定的金钱。每个END事件发生需要至少参加一定数...

dengxiao3304的博客 160

DeepSeek+即梦:AI视频创作从0到1全突破

本文为 DeepSeek 与即梦生成视频全攻略,从前期注册登录、熟悉工具界面及硬件网络准备入手,助读者开启 AI 视频创作。详细阐述利用 DeepSeek 构思脚本、即梦实现画面生成与静态图转动态视频的方法,包括提示词编写、参数调整等技巧。同时介绍后期合成音画、添加字幕特效及多平台适配要点,结合实战案例解析全流程。还分享进阶提示词优化、版权注意等避坑指南,为创作者提供从 0 到 1 的 AI 视频创作完整解决方案。

邓邓子的博客 8105

【JZOJ 3487】【NOIP2013模拟联考11】剑与魔法(dragons) (贪心+优先队列)

问题描述 万老师听说某大国很流行穿越,于是他就想写一个关于穿越的剧本。 闲话休提。话说老师穿越到了某一个剑与魔法的大陆。因为如此这般,所以老师从维娜艾那里得到了预言。老师一共被告知了若干件按顺序结算的事件。这些事件分为两类:战役事件(CASE)、穿越回去事件(END)。战役事件可以选择是否参加,参加了之后会获得一定的金钱。每个END事件发生需要至少参加一定数量的战役事件。特别的是,END事件如...

Fallen_Angel001的博客 353

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

ssl提高组周六模拟赛【2018.9.8】

前言 开学后,新学年新气象,学校题库也迎来了新的改动,界面大改变,也可以比赛了。 所以这周就有比赛了,而在纪中被虐习惯后回来渴望继续被虐就来参加提高组模拟赛(反正今年也参加提高组) 成绩 只放Rank&amp;amp;amp;amp;amp;amp;nbsp;1∼10Rank&amp;amp;amp;amp;amp;amp;nbsp;1∼10Rank\ 1\sim10 RankRankRank PersonPersonPerson ScoreScoreSc

QuantAsk 534

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

2018_9_8 模拟题

前言:比较OTL JZOJ 3470 最短路 题目 给出一个nnn个节点,mmm条边的有向图,并且有kkk个点必须走过,问从起点sss到终点ttt的最短路径 分析 跑kkk遍spfaspfaspfa,在起点跑一次spfaspfaspfa,然后剩下的其实就是深搜或者状压了(我用了状压),时间复杂度O(k×常数×E+211×112)O(k×常数×E+211×112)O(k...

lemondinosaur的博客 556

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

2018.8.6提高B组模拟考试

爆零了...爽到 T1 题意简述:jzoj3470 Description 给定一个n个点m条边的有向图,有k个标记点,要求从规定的起点按任意顺序经过所有标记点到达规定的终点,问最短的距离是多少。 Input 第一行5个整数n、m、k、s、t,表示点个数、边条数、标记点个数、起点编号、终点编号。接下来m行每行3个整数x、y、z,表示有一条从x到y的长为z的有向...

weixin_34114823的博客 195

P3545 [POI2012]HUR-Warehouse Store [堆贪心]

HUR−Warehouse  StoreHUR-Warehouse\ \ StoreHUR−Warehouse  Store 题目描述见链接 . 正解部分\color{red}{正解部分}正解部分 类似 这道题目, 都是使用堆进行 贪心 . 实现部分\color{red}{实现部分}实现部分 #include<bits/stdc++.h> #...

Zbr162的博客 303

「BSOJ3784」 剑与魔法 - 贪心+堆

题目描述 万老师听说某大国很流行穿越,于是他就想写一个关于穿越的剧本。 闲话休提。话说老师穿越到了某一个剑与魔法的大陆。因为如此这般,所以老师从维娜艾那里得到了预言。老师一共被告知了若干件按顺序结算的事件。这些事件分为两类:战役事件(CASE)、穿越回去事件(END)。战役事件可以选择是否参加,参加了之后会获得一定的金钱。每个END事件发生需要至少参加一定数量的战役事件。特别的是,END事件如...

TbYangZ的博客 362

【堆,贪心】BZOJ1029 [JSOI2007]建筑抢修

题面在这里刷水题ing……显然需要贪心。 会有一种想法,就是对结束时刻排序维护一个最大利用时刻lst,在此时刻之前都被利用了1.若当前建筑可以在损毁之前被修复,就修复(增加答案) 2.否则,尝试在之前建筑中寻找所需时间最大的来替换当前(答案不变,但花费的总时间变小了)示例程序:

linkfqy 1074

[POI 2012]Warehouse Store(堆+贪心)

题目链接http://main.edu.pl/en/archive/oi/19/hur题目大意有一家专卖一种商品的店,考虑连续的n天。 第i天上午会进货Ai件商品,中午的时候会有顾客需要购买Bi件商品,可以选择满足顾客的要求,或是无视掉他。 如果要满足顾客的需求,就必须要有足够的库存。问最多能够满足多少个顾客的需求。思路应该是个很显然的贪心做法吧。类似这样的贪心真的是非常多的了。 维护一个大根

某沙茶的OI代码库 948

超市【堆 贪心】

https://www.acwing.com/problem/content/description/147/ 先按照过期时间排序; 定义小根堆(权重) 小根堆代表前q.size(),卖出的商品 遍历每一个商品,如果当前的商品过期时间>q.size() 把商品入堆 反之,比较堆顶元素,若堆顶元素值比商品值小。pop掉,商品入堆 #include<iostream> #inclu...

谁是凶手1703 221

洛谷2048 BZOJ2006 NOI2010 超级钢琴 线段树 堆 贪心

题目链接 题意: 给你一个长度为nnn的序列,一个区间的权值是区间内的权值和,你要选择kkk个不相同长度在[l,r][l,r][l,r]的区间,使得这kkk个区间总权值和最大。n,k&lt;=5e5n,k&lt;=5e5n,k<=5e5。 题解: 算是送我退役的题吧。如果一轮省选之前我做了这个题,可能结果就会不一样了吧,可惜没有如果。 显然是找长度在[l,r][l,r][l,...

forever_shi的博客 455

Jzoj P1142.剑与魔法___优先队列

题目大意: 事件分为两类:战役事件CASECASECASE和穿越回去事件ENDENDEND。 战役事件可以选择是否参加,参加后会获得一定金钱。 END事件发生需要至少参加一定数量的战役事件。 特别的是,END事件如果满足要求就会强制发生。 要求只有最后一个END事件会发生。 问此时获得最多的金钱数,无法满足则输出−1−1-1 N&lt;=200,000N&lt;=200,000N10...

生如夏花之绚烂 407

[堆 贪心] Canada Cup 2016 D. Contest Balloons

不想多说 #include #include #include #include using namespace std; typedef long long ll; typedef pair abcd; inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; if (p1==p2) { p2=(p1=buf)+fr

雯舞 372

2018年9月8日提高组模拟赛 T2 剑与魔法(dragons)

大意 给定一个序列,再规定在某些数之前只能选择一定的数量,求最大获取价值 思路 因为这个获取数量是不断往后推的,也就是说我们始终都要保证空缺至少有一个,然后我们维护一个堆,若是放入则直接放入,若是限制则调整,这样就可以得到最优解了 代码 #include&amp;lt;cstdio&amp;gt; #include&amp;lt;queue&amp;gt; using namespace std;i...

Ajwallet 461
上一篇: 【HDU 1054】Strategic Game【树形DP】
下一篇: 【JZOJ 3470】最短路【最短路】【DFS】
stoorz1023
博客等级 码龄9年 101粉丝 595原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值