华为OD机试真题 Java 实现【最小的调整次数】【2023Q1 100分】

2023-11-14

在这里插入图片描述

一、题目描述

有一个特异性的双端队列,该队列可以从头部或尾部添加数据,但是只能从头部移出数据。

小A依次执行2n个指令往队列中添加数据和移出数据。

其中n个指令是添加数据 (可能从头部添加、也可能从尾部添加),依次添加1到n,n个指令是移出数据,现在要求移除数据的顺序为1到n。

为了满足最后输出的要求,小A可以在任何时候调整队列中数据的顺序。

请问 小A 最少需要调整几次才能够满足移除数据的顺序正好是1到n。

二、输入描述

第一行一个整数 n,表示数据范围。

接下来有 2n 行,其中有n行为添加数据:

  • 指令“ head add x”表示从头部添加数据x;
  • “tail add x”表示从尾部添加数据x;
  • 另外n行为移出数据指令,指令为“remove”的形式,表示移出1个数据;

取值范围:

1<=n<=3*105,所有的数据均合法。

三、输出描述

一个整数,表示小A 要调整的最小次数。

四、补充说明

输入会保证按照1到n的顺序加入队列。确保输出时对应的数据已经在队列中。

五、解题思路

  1. 读取输入的数据范围 n;
  2. 创建一个空的链表 linke
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

华为OD机试真题 Java 实现【最小的调整次数】【2023Q1 100分】 的相关文章

随机推荐

  • C++继承

    继承的概念 继承 inheritance 机制是面向对象程序设计使代码可以复用的重要的手段 它允许程序员在保持原有类特性的基础上进行扩展 增加功能 这样产生新的类 称为派生类 继承呈现了面向对象程序设计的层次结构 体现了由简单到复杂的认知过
  • maven 报错Failed to execute goal org.apache.maven.pluginsmaven-archetype-plugin3.2

    新手走过各种各样的坑 idea中maven基础配置中总是出现各种各样的错误 在网上找了一些资料 发现并没有找到切入主题的解决方法 走过的坑总是记忆尤新 idea第一次配置maven 提示如下所示错误 仔细检查了一个maven的配置文件 发现
  • 正态分布函数_从微积分角度证明“正态分布密度函数”

    本篇我们来证明一个常见的优美的积分等式 聪明你是否看出如下等式曾在哪里出现过呢 没错如下和正态分布中概率密度函数很像 但我们仅从积分学的角度来分析正面它 证明它灵活的数学技巧 你准备好了吗 因为e x 2是关于x的偶函数 所以我们明显可以想
  • 安装SAS可能遇到的各种问题

    近日 为了提升数据分析的效率 准备开始学习SAS相关内容 结合自身已经掌握的Python 希望在数据分析 挖掘方向走的越来越远 下面 来分享下我安装SAS过程中遇到的各种问题 真是一个一个坑走过来的 系统环境 Windows 10 安装版本
  • 在对话框中实现预览图形文件的功能

    一 使用 acdbDisplayPreviewFromDwg 函数 1 引用说明 此功能获取由指定的图形的预览图像 如果有 pszDwgfilename 将其显示在由HWND参数pPreviewWnd标识的窗口中 图像尺寸最大变化不超过25
  • Anaconda3最新换国内源教程,中科大源或者清华源

    环境 ubuntu16 04 anaconda python 3 7 中科大源 conda config add channels https mirrors ustc edu cn anaconda pkgs main conda con
  • esp32 完整开发指南_【安信可ESP32语音开发板专题①】ESP32-A1S音频开发板之离线语音识别控制LED灯

    本博客学习由 安信可开源团队 潜心编写 做ESP32 A1S离线语音初步入门技术交流分享 如有不完善之处 请留言 本团队及时更改 一 前言 离线语音 顾名思义 在不连网络的状态下 产品能识别语音指令并执行相应的控制输出 安信可基于乐鑫ESP
  • @SpringQueryMap注解 feign的get传参方式

    SpringQueryMap注解 feign的get传参方式 问题 启动服务 传入参数测试 发现feign远程调用的方法入参失败 排查发现是feign接口调用controller方法的时候就没进来参 原因 spring cloud项目使用f
  • armeabi-v7a、arm64-v8a、armeabi、x86、x86_64的区别

    1 armeabi v7a 第七代及以上的ARM处理器 2011年以后生产的大部分Android设备都使用 2 arm64 v8a 第8代 64位ARM处理器 很少设备 三星GalaxyS6是其中之一 3 armeabi 第5代 第6代的A
  • go-zero 基础 -- 进阶指南

    版本 1 4 0 1 目录拆分 1 1 系统结构分析 在上文提到的商城系统中 每个系统在对外 http 提供服务的同时 也会提供数据给其他子系统进行数据访问的接口 rpc 因此每个子系统可以拆分成一个服务 而且对外提供了两种访问该系统的方式
  • FreeRTOS之软件定时器

    FreeRTOS之软件定时器 声明 本人按照正点原子的FreeRTOS例程进行学习的 欢迎各位大佬指责和批评 谢谢 include sys h include delay h include usart h include led h in
  • WIN7打开或关闭Windows功能后空白问题解决

    问题描述 打开或关闭Windows功能界面 一片空白 问题如下 解决方法 参考百度出来的几个办法 都无法解决 可能在下的系统的注册表问题比较严重 参考另一个方法 完美解决 windows7打开或关闭Windows功能后空白的问题 下载win
  • Python指南——类

    http blog csdn net ccat article details 8364 译者 至此Python指南的正文部分就全部译完了 感谢Clover姐姐 Sickkid 尹伟铭 面面 珂珂等朋友在翻译过程中给我提供的帮助和支持 特别
  • 用nodejs到底做什么?

    如何解决学了之后无法解决问题的状态 前端的内容很多 有html css javascript三个大模块 但是如何能去解决问题 核心还是根据你的兴趣 或者你根据一个你能看到的实际项目好好研究一下代码 了解其中运作的机制 然后尝试着修改一下代码
  • EduCoder_web实训作业--CSS样式规则

    由于时间关系 我只写第四题啦 2020 12 31 已将缺失关卡补全 第一关 B D C A B 第二关 h1 style font family 楷体 text align center line height 2 静夜思 h1 h2 s
  • Pandas数据处理与分析

    文章目录 前言 1 导入数据 2 审阅数据 3 数据预处理 4 数据分析 5 pandas数据可视化 这里不再过多的讲解pandas可视化 因为pandas中的数据可视化已经可以满足我们大部分的要求了 也就省下了我们很多自己使用 如 mat
  • flume实验

    1 上传flume ng 1 5 0 cdh5 3 6 tar gz 至 opt modules cdh 并解压 2 编辑 conf flume env sh export JAVA HOME usr java jdk1 7 0 79 3
  • 串口通信与编程01:串口基础知识

    串口通信与编程01 串口基础知识 串口是串行接口 serial port 的简称 也称为串行通信接口或COM接口 串口通信是指采用串行通信协议 serial communication 在一条信号线上将数据一个比特一个比特地逐位进行传输的通
  • Nginx学习笔记3【老男孩教育】

    Nginx模块使用 autoindex网站列表功能 下载功能子配置文件 修改nginx子配置文件 限制模块 认证模块 创建用户名和密码 状态模块 location功能 Goaccess日志分析 模块总结
  • 华为OD机试真题 Java 实现【最小的调整次数】【2023Q1 100分】

    一 题目描述 有一个特异性的双端队列 该队列可以从头部或尾部添加数据 但是只能从头部移出数据 小A依次执行2n个指令往队列中添加数据和移出数据 其中n个指令是添加数据 可能从头部添加 也可能从尾部添加 依次添加1到n n个指令是移出数据 现