题目描述

【特异性双端队列 | 最小调整顺序次数】

给定一个队列,但是这个队列比较特殊,可以从头部添加数据,也可以从尾部添加数据,但是只能从头部删除数据。
输入一个数字n,会依次添加数字1~n(也就是添加n次)。
但是在添加数据的过程中,也会删除数据,要求删除必须按照1~n按照顺序进行删除,所以在删除时,可以根据需要调整队列中数字的顺序以满足删除条件。

输入描述

第一行一个数据N,表示数据的范围。

接下来的2N行是添加和删除语句。
其中:

head add x 表示从头部添加元素 x,

tail add 表示从尾部添加元素,

remove表示删除元素。

输出描述

输出一个数字,表示最小的调整顺序次数。

代码:

n = int(input())
cmds = [input() for i in range(n*2)]
size = 0
count = 0
isSorted = True
for cmd in cmds:if cmd.startswith('head add'):if size > 0  and isSorted:isSorted = Falsesize += 1elif cmd.startswith('tail add'):size += 1else:if size > 0 and not isSorted:isSorted = Truecount += 1size -= 1
print(count)

【特异性双端队列 | 最小调整顺序次数】相关推荐

  1. 【华为OD机试真题 python】特异性双端队列 | 最小调整顺序次数【2022 Q4 | 100分】

    ■ 题目描述 [特异性双端队列 | 最小调整顺序次数] 给定一个队列,但是这个队列比较特殊,可以从头部添加数据,也可以从尾部添加数据,但是只能从头部删除数据. 输入一个数字n,会依次添加数字1~n(也 ...

  2. 2023新华为OD机试题 - 特异性双端队列(JavaScript) | 刷完必过

    华为Od必看博客 华为od 2023 | 什么是华为od,od 薪资待遇,od机试题清单 华为OD机试真题大全,用 Python 解华为机试题 | 机试宝典 华为OD机试 全流程解析+经验分享,题型分 ...

  3. 华为OD机试 - 最小调整顺序次数、特异性双端队列

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

  4. 【100%通过率】华为OD机试真题 C++ 实现【最小调整顺序次数】【2022.11 Q4 新题】

             所有题目均有五种语言实现.C实现目录.C++ 实现目录.Python实现目录.Java实现目录.JavaScript实现目录<

  5. 【100%通过率】华为OD机试真题 Java 实现【最小调整顺序次数】【2022.11 Q4 新题】

             所有题目均有五种语言实现.C实现目录.C++ 实现目录.Python实现目录.Java实现目录.JavaScript实现目录<

  6. 【100%通过率】华为OD机试真题 JavaScript 实现【最小调整顺序次数】【2023 Q1 | 100分】

             所有题目均有五种语言实现.C实现目录.C++ 实现目录.Python实现目录.Java实现目录.JavaScript实现目录

  7. Python实现双端队列

    Python实现双端队列 关于双端队列的介绍,请参考:https://blog.csdn.net/weixin_43790276/article/details/104033337 双端队列的数据存储 ...

  8. 题目0155-特异性双端队列

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

  9. 【数据结构】队列-顺序队列、循环队列、链队、双端队列

    定义 队列是只允许在一端进行插入,而在另一端进行删除的线性表. 队头(Front):允许删除的一端,又称为队首. 队尾(Rear): 允许插入的一端. 先进入队列的元素必然先离开队列,即先进先出(Fi ...

最新文章

  1. ExtJS 表单 submit时错误处理
  2. 南方h5手簿使用说明书_雄脱使用非那雄胺米诺地尔效果
  3. python测验2_python接口测试(二)
  4. Yii2 Pjax的简单使用
  5. 云炬Android开发笔记 2-1项目初始化
  6. Hadoop之MapTask工作机制
  7. vux 组件库首次使用安装
  8. 10以内的分解与组成怎么教_狗狗酷炫的飞盘游戏怎么玩?分解步骤教你快速学会...
  9. Java基础知识学习04-自定义类、ArrayList集合
  10. dp笔记:关于DP算法和滚动数组优化的思考
  11. go kegg_KEGG分析及可视化
  12. 大数据之-Hadoop之HDFS的API操作_文件夹_以及文件删除案例---大数据之hadoop工作笔记0059
  13. mongodb 良贴
  14. Android蓝牙服务
  15. html 获取mac地址,JS获取客户端IP地址与MAC地址示例
  16. 基于PSIM及其DLL模块的单相全桥并网逆变器仿真
  17. 基于OMAPL138的Linux字符驱动_GPIO驱动AD9833(一)之miscdevice和ioctl
  18. 软考中级网络工程师证书如何查询?
  19. Wilcoxon 检验之 rank-sum 与 signed-rank
  20. 超闩锁和子闩锁如何工作的

热门文章

  1. Java学成什么样,可以出去找实习工作?
  2. Linkage Mapper 专栏内容介绍
  3. word文档生成目录的方法,word生成目录之后怎么修改页码
  4. 能上qq但是打不开网页-详解DNS
  5. LeetCode算法题整理(200题左右)
  6. 搜索大全——实用搜索引擎
  7. 当Proteus 8 Professional运行程序的时候出现有些器件不可用
  8. NO.1——VulnHub-GoldenEye-1-Walkthrough
  9. 如何判断Android系统的版本
  10. 流媒体服务器FFMPEG转码流摄像头取流