L2-032 彩虹瓶

一、题目

二、解题思路

  1. 判断输入的数字(搬来的这箱小球)是否符合:若符合,则 cot++ (下一个颜色序号);若不符合,则入栈(放到临时货架),如果栈溢出(超过临时货架的容量),则标记 flag=false (无法顺利完成任务)。
  2. 循环判断栈顶元素(临时货架)是否符合:若符合,则 cot++ (下一个颜色序号),并将栈顶元素移出(从临时货架取下);否则退出循环。
  3. 输出:如果栈溢出(堆积的货物超过容量)或 栈非空(其余颜色的小球无法取下)则表示无法顺利完成任务。

三、代码

#include<iostream>
using namespace std;
#include<stack>
int main()
{int n,m,k;cin>>n>>m>>k;while(k--){stack<int> box;int cot=1;bool flag=true;for(int i=0;i<n;i++){
//			输入的数字(搬来的这箱小球)是否符合 int t;cin>>t;if(cot==t){cot++;}else{box.push(t);if(box.size()>m){flag=false;}}
//			栈顶元素(临时货架)是否符合 while(!box.empty()){if(box.top()==cot){cot++;box.pop();}else{break;}}}
//		栈溢出(堆积的货物超过容量)或 栈非空(其余颜色的小球无法取下)if(flag && box.empty()){cout<<"YES"<<endl;}else{cout<<"NO"<<endl;}}return 0;
}

四、总结

        在判断输入的数字是否符合这一步时,若不符合并入栈后,如果栈溢出,标记 flag=false ,需要注意的是此时不要写 break 退出循环,因为数据在持续输入,会导致错误(测试点 1 )。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/690522.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java中的线程(创建多线程的三种方法)

Java中的线程——创建 创建多线程方式一&#xff1a;继承Thread类方式二&#xff1a;实现Runnable接口方式三&#xff1a;实现Callable接口 线程的常用API 创建多线程 方式一&#xff1a;继承Thread类 定义一个子类MyThread继承线程类java.lang.Thread&#xff0c;重写run方法…

板块一 Servlet编程:第三节 HttpServletRequest对象全解与请求转发 来自【汤米尼克的JAVAEE全套教程专栏】

板块一 Servlet编程&#xff1a;第三节 HttpServletRequest对象全解与请求转发 一、什么是HttpServletRequest二、接收请求的常用方法三、请求乱码问题四、请求转发&#xff1a;forward五、Request作用域getParameter和getAttribute的区别 在上一节中我们已经学习了完整的Servl…

政安晨:【完全零基础】认知人工智能(一)【超级简单】的【机器学习神经网络】 —— 预测机

开个头 很多小伙伴们很想亲近人工智能与机器学习领域&#xff0c;然而这个领域里的核心理论、算法、工具给人感觉都太过“高冷”&#xff0c;让很多小伙伴们望而却步&#xff0c;导致一直无法入门。 如何捅破这层窗户纸&#xff1f; 让高冷的不再高冷&#xff0c;让神秘的不…

当excel中表格打印预览右边超出限定页面时,调整列宽

解决办法&#xff1a;调整整体列或者部分列的列宽 操作流程如下&#xff1a; 第一步&#xff1a;选中需要调整的列 ①将鼠标放在表格的列上&#xff0c;等出现向下粗箭头后——>②单击&#xff08;变成粗十字&#xff09;该列——>③拖动选中列 第二步&#xff1a;调…

30分钟快速上手LaTex

文章目录 30 分钟快速上手 LATEX1.什么是LATEX?2.为什么学习LATEX?3.编写第一个LATEX程序4.LATEX文档的序言5.LATEX文档的标题、作者和日期信息6.LATEX文档的注释7.LATEX文档的粗体、斜体和下划线8.LATEX文档中添加图片9.LATEX中对图像进行标注、标签化和引用10.在LATEX中创建…

Django后端开发——ORM

文章目录 参考资料ORM-基础字段及选项字段类型练习——添加模型类应用bookstore下的models.py数据库迁移——同步至mysqlmysql中查看效果 字段选项Meta类定义示例&#xff1a;改表名应用bookstore下的models.py终端效果 练习——改表名字段选项修改应用bookstore下的models.py终…

vue3+ts项目搭建

⛰️个人主页: 蒾酒 &#x1f525;系列专栏&#xff1a;《vue3实战》 &#x1f30a;山高路远&#xff0c;行路漫漫&#xff0c;终有归途。 目录 前置条件 基础工程模板搭建 测试环境变量是否配置成功 初始化vue项目 安装常用依赖 基础项目目录介绍 前置条件 请确…

星纪魅族宣布 All in AI;欧盟将首次对苹果处以罚款丨 RTE 开发者日报 Vol.146

开发者朋友们大家好&#xff1a; 这里是 「RTE 开发者日报」 &#xff0c;每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE &#xff08;Real Time Engagement&#xff09; 领域内「有话题的 新闻 」、「有态度的 观点 」、「有意思的 数据 」、「有思考的 文…

每天分享一个好用的Python库-Colorama

每天分享一个好用的Python库-Colorama 前言 今天分享的是一个主要用来给文本添加各种颜色的库&#xff1a;colorama。 colorama 简介 colorama是一个可以跨多终端显示不同颜色字符与背景的第三方库。 安装 使用pip进行安装 $ pip install colorama简单使用 常用参数 字…

C语言中关于#include的一些小知识

写代码的过程中&#xff0c;因为手误&#xff0c;重复包含了头文件 可以看到没有报错 如果是你自己编写的头文件&#xff0c;那么如果没加唯一包含标识的话&#xff0c;那么编译器会编译报错的。如果是系统自带的头文件&#xff0c;由于其每个头文件都加了特殊标识&#xff0c…

文件上传漏洞--Upload-labs--Pass05--大小写绕过

一、什么是大小写绕过 我们想要上传含有恶意代码的 .php 文件&#xff0c;但 .php 后缀名的文件可能会被 白名单 或 黑名单拦截&#xff0c;从而上传失败&#xff0c;在某些源代码中&#xff0c;没有对文件的后缀用 strtolower()函数 统一进行小写化&#xff0c;这就会存在大小…

CAN收发器芯片PCA82C250 TXD RXD引脚方向说明

PCA82C250 收发器芯片TXD RXD和以往TTL的USART接口上TXD RXD方向和定义不同。不可直接连接TTL USART引脚&#xff0c;应该要连接CAN专用的TXD RXD引脚。 并且TXD RXD引脚有方向。其中TXD引脚是输入&#xff01; RXD引脚是输出&#xff01; 即TXD RXD引脚的方向 不是相对以本体…

第13章 基于Java Swing的图书管理系统

13.1 需求分析 在当今社会&#xff0c;随着信息技术的不断发展&#xff0c;信息管理系统已经进入到了人类社会的各个领域&#xff0c;人们对于信息技术的掌握也越来越迅速。在图书管理的过程中也引入图书管理体系&#xff0c;图书管理系统将大大节省人力、物力、时间、金钱等资…

ART-Pi LoRa开发套件 不完全教程

1 前言 ART-Pi LoRa 开发套件(LSD4RFB-2EVKM0201)是利尔达科技与睿赛德科技联合出品的一套面向物联网开发者的 LoRa 产品原型设计工具包&#xff0c;搭配ART-Pi主板使用&#xff0c;支持利尔达全系 LoRa 节点与网关模块&#xff0c;拥有丰富的可选配件&#xff0c;用户 可按需…

C++6.0

思维导图 .编程题&#xff1a; 以下是一个简单的比喻&#xff0c;将多态概念与生活中的实际情况相联系&#xff1a;比喻&#xff1a;动物园的讲解员和动物表演 想象一下你去了一家动物园&#xff0c;看到了许多不同种类的动物&#xff0c;如狮子、大象、猴子等。现在&#xff0…

【深入理解设计模式】单例设计模式

单例设计模式 概念&#xff1a; 单例模式&#xff08;Singleton Pattern&#xff09;是 Java 中最简单的设计模式之一。 单例设计模式是一种创建型设计模式&#xff0c;其主要目的是确保类在应用程序中的一个实例只有一个。这意味着无论在应用程序的哪个位置请求该类的实例&a…

IO 作业 24/2/19

1> 使用fread和fwrite完成两个文件的拷贝 #include <myhead.h> int main(int argc, const char *argv[]) {//定义被复制文件指针FILE *fp1NULL;if((fp1fopen("./111.bmp","r"))NULL){perror("error open");return -1;}//定义目标文件指…

Elasticsearch 与 OpenSearch:开源搜索技术的演进与选择

在2010年以Apache 2.0开源协议发布后&#xff0c;Elasticsearch迅速成为全球最受欢迎的企业搜索引擎。 Elasticsearch常与Logstash和Kibana一起部署&#xff0c;这一组合被称为 Elasitc Stack&#xff0c;用于启用日志分析用例&#xff0c;包括应用可观察性、安全日志分析和理解…

opencv计算机视觉

树莓派主机的无键盘解决 进入控制面板&#xff0c;更改适配器设置&#xff0c;WIFI属性&#xff0c;勾选 1.将网线两头分别接入树莓派和笔记本的网线接口 2.在无线连接属性那里勾选允许其他用户连接 3.运行cmd使用arp -a查看树莓派ip地址&#xff0c;或者使用ipscanner查看 cmd…

Springboot+vue的疫情信息管理系统(有报告)。Javaee项目,springboot vue前后端分离项目。

演示视频&#xff1a; Springbootvue的疫情信息管理系统&#xff08;有报告&#xff09;。Javaee项目&#xff0c;springboot vue前后端分离项目。 项目介绍&#xff1a; 本文设计了一个基于Springbootvue的前后端分离的疫情信息管理系统&#xff0c;采用M&#xff08;model&a…