2024/1/30 备战蓝桥杯 3-1 栈

目录

小鱼的数字游戏

P1427 小鱼的数字游戏 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

表达式括号匹配

P1739 表达式括号匹配 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

【模板】栈

B3614 【模板】栈 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)


小鱼的数字游戏

P1427 小鱼的数字游戏 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

思路:模拟+stl的stack

关于stack的操作:

std::stack<type> s :定义一个type类型的栈

s.push(x) :把x放入栈中

s.top() :取出栈顶元素,但不删除

s.pop() :删除栈顶元素

s.size() :返回栈中元素的数量

s.empty() :判断栈中是否为空(栈不空:while(!s.empty()) )

完整代码:

#include <bits/stdc++.h>
#define int long long
signed main() {int t;std::stack<int> s;while (std::cin >> t) {if (t == 0)break;else {s.push(t);}}while (!s.empty()) {std::cout << s.top() << " ";s.pop();}return 0;
}

表达式括号匹配

P1739 表达式括号匹配 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

思路:模拟+stl的stack

遇到左括号就进栈,遇到右括号并且栈不空的时候,栈顶元素出栈

完整代码:

#include <bits/stdc++.h>
#define int long long
signed main() {std::stack<char> st;std::string s;std::cin >> s;int n = s.length();s = " " + s;int flag = 0;for (int i = 1; i <= n; i++) {if (s[i] == '(') {st.push(s[i]);} else if (s[i] == ')' && st.size() != 0) {st.pop();} else if (s[i] == ')' && st.size() == 0) {flag = 1;} else if (s[i] == '@') {break;} elsecontinue;}//std::cout<<flag;if (st.empty() && flag == 0) {std::cout << "YES\n";} else {std::cout << "NO\n";}return 0;
}

【模板】栈

B3614 【模板】栈 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

思路:模拟+stl的栈

注意:题目中数据输入比较大,可以用字符串来存需要输入的数

完整代码:

#include <bits/stdc++.h>
#define int long long
signed main() {int t;std::cin >> t;while (t--) {int n;std::cin >> n;std::stack<std::string> st;std::string s, x;for (int i = 1; i <= n; i++) {std::cin >> s;if (s == "push") {std::cin >> x;st.push(x);}if (s == "query") {if (st.size() == 0) {std::cout << "Anguei!\n";} else {std::cout << st.top() << "\n";}}if (s == "pop") {if (st.empty()) {std::cout << "Empty\n";} else {st.pop();}}if (s == "size") {std::cout << st.size() << "\n";}}}return 0;
}

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

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

相关文章

使用Neo4j做技术血缘管理

目录 一、neo4j介绍 二、windows安装启动neo4j 2.1下载neo4j 2.2 解压文件 2.3 启动neo4j 三、neo4j基础操作 3.1 创建结点和关系 3.2 查询 3.3 更改 3.4 删除 四、技术血缘Demo实现 4.1 构建节点对象 4.2 构建存储对象 4.3 创建有属性关联关系 4.4 最后是图结果…

中科星图——2020年全球30米地表覆盖精细分类产品V1.0(29个地表覆盖类型)

数据名称&#xff1a; 2020年全球30米地表覆盖精细分类产品V1.0 GLC_FCS30 长时序 地表覆盖 动态监测 全球 数据来源&#xff1a; 中国科学院空天信息创新研究院 时空范围&#xff1a; 2015-2020年 空间范围&#xff1a; 全球 数据简介&#xff1a; 地表覆盖分布…

【四】【C++】日期类简单实现

编写GetMonthDay函数 int GetMonthDay(int year, int month) {static int monthDays[13] {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};if (month 2 && ( (year % 4 0 && year % 100 ! 0) || year % 400 0)) {return 29;}return monthDays[month]…

瑞士0.5米高程地形瓦片数据介绍

一、背景 瑞士是位于中欧的一个国家&#xff0c;以其美丽的自然风光、高质量的生活和强大的金融体系而闻名&#xff0c;其位于欧洲中部&#xff0c;四面环山&#xff0c;与德国、法国、意大利、奥地利和列支敦士登等国家接壤。瑞士境内有许多湖泊和阿尔卑斯山脉的一部分。瑞士…

在 Linux 中挂载新硬盘动态使用

目录 一&#xff1a;添加硬盘并且格式化 二&#xff1a;创建逻辑卷 三&#xff1a;挂载卷到目录 在 Linux 中挂载新硬盘并进行格式化的操作可以按照以下步骤进行&#xff1a; 一&#xff1a;添加硬盘并且格式化 查看现有分区状态和服务器安装的硬盘状态&#xff1a; df -…

node版本切换(nvm)

1.https://github.com/coreybutler/nvm-windows/releases 进入下载nvm管理器 点击下载如果访问不到&#xff0c;可以使用我已下载好上传的 2.将下载文件解压到nvm目录中 3.配置nvm的环境变量 在系统变量中添加&#xff1a; NVM_HOME &#xff1a;包管理器的文件目录 NVM_SYML…

Workfine:用「订阅制」破解中小企业数字化转型困局

中小企业是国民经济和社会发展的重要力量&#xff0c;是扩大就业的载体&#xff0c;是改善民生的关键。《“十四五”数字经济发展规划》明确提出大力推进数字产业化转型&#xff0c;实施中小企业数字化赋能专项行动。数字化转型有利于中小企业降低成本、提高效率、加速转型升级…

记录解决报错--These dependencies were not found jsencrypt lodash-es

1.场景 idea打包vue&#xff0c;报错退出&#xff0c;缺少依赖 These dependencies were not found jsencrypt lodash-es2.解决步骤 ①到相关目录下直接安装依赖&#xff0c;npm install --save jsencrypt lodash-es。我这里是没安装成功&#xff0c;原因是很多依赖冲突。…

大数据之水平切分用途原理

数据库的水平切分方案是一种将数据分散到多个数据库或表中的策略&#xff0c;以提高系统的可扩展性和性能。以下是关于水平切分方案的详细介绍&#xff1a; 基本原理&#xff1a;水平切分方案基于将数据按照一定的规则分散到多个物理独立的数据库或表中&#xff0c;每个数据库或…

k8s Sidecar filebeat 收集容器中的trace日志和app日志

目录 一、背景 二、设计 三、具体实现 Filebeat配置 K8S SideCar yaml Logstash配置 一、背景 将容器中服务的trace日志和应用日志收集到KAFKA&#xff0c;需要注意的是 trace 日志和app 日志需要存放在同一个KAFKA两个不同的topic中。分别为APP_TOPIC和TRACE_TOPIC 二、…

HarmonyOS--属性动画和显示动画

动画-组件参考&#xff08;基于ArkTS的声明式开发范式&#xff09;-ArkTS API参考 | 华为开发者联盟 (huawei.com) 在HarmonyOS的ArkUI开发框架中&#xff0c;动画主要分为两种类型&#xff1a;属性动画&#xff08;Property Animation&#xff09;和显示动画&#xff08;Expl…

Tensorflow2.0笔记 - Tensor的限值clip操作

本笔记主要记录使用maximum/minimum,clip_by_value和clip_by_norm来进行张量值的限值操作。 import tensorflow as tf import numpy as nptf.__version__#maximum/minimumz做上下界的限值 tensor tf.random.shuffle(tf.range(10)) print(tensor)#maximum(x, y, nameNone) #对…

贪吃蛇---C语言---详解

引言 C语言已经学了不短的时间的&#xff0c;这期间已经开始C和Python的学习&#xff0c;想给我的C语言收个尾&#xff0c;想起了小时候见过别人的老人机上的贪吃蛇游戏&#xff0c;自己父母的手机又没有这个游戏&#xff0c;当时成为了我的一大遗憾&#xff0c;这两天发现C语…

Filebeat日志采集到Logstash再到Elasticsearch集群

一、安装Logstash Logstash我也是在/data下创建了个logstash目录 和Filebeat一样去官网找到你相应的版本下载并解压,点击链接跳转官网:Logstash curl -L -O https://artifacts.elastic.co/downloads/logstash/logstash-7.10.1-linux-x86_64.tar.gz tar -zxvf logstash-7.1…

【LeetCode】每日一题 2024_1_30 使循环数组所有元素相等的最少秒数(哈希、贪心、扩散)

文章目录 LeetCode&#xff1f;启动&#xff01;&#xff01;&#xff01;题目&#xff1a;使循环数组所有元素相等的最少秒数题目描述代码与解题思路 LeetCode&#xff1f;启动&#xff01;&#xff01;&#xff01; 今天的题目类型差不多是第一次见到&#xff0c;原来题目描述…

【PyCharm教程】PyCharm 安装、卸载和升级包

PyCharm 为特定的 Python 解释器提供了安装、卸载和升级 Python 包的方法。默认情况下&#xff0c;PyCharm 使用 pip 来管理项目包。对于 Conda 环境&#xff0c;您可以使用conda 包管理器。 在 PyCharm 中&#xff0c;您可以在Python 包工具窗口和 Python 解释器Settings/Pre…

化工企业能源在线监测管理系统,能源管理新利器

化工企业在开展化工生产活动时&#xff0c;能源消耗量较大&#xff0c;其节能潜力空间也较大&#xff0c;因此必须控制能耗强度&#xff0c;促进能效水平的稳步提升。化工企业通过能源现状的分析&#xff0c;能够实现能源使用情况的实时反馈与监管&#xff0c;从而达到节能减排…

直播不仅可以带货,还可以远程协作

直播是一种非常直观高效的信息共享模式&#xff0c;目前直播带货比较火&#xff0c;但我也不懂&#xff0c;现就我涉及的领域和实践做一些分享&#xff0c;目前我所做的直接互动分发系统在软硬件全系统闭环下&#xff0c;结合100ms级的低延迟&#xff0c;基本可以让人有深入其境…

洛宁县王范回族镇中原村新时代文明实践站工程竞争性谈判公告

洛宁县王范回族镇中原村新时代文明实践站工程竞争性谈判公告 (招标编号&#xff1a;HNSC-2024-004) 项目所在地区&#xff1a;河南省,洛阳市,洛宁县 一、招标条件 本洛宁县王范回族镇中原村新时代文明实践站工程已由项目审批/核准/备案机关批准&#xff0c;项目资金来源为国有资…

全志R128基础组件开发——显示与屏幕驱动②

sys_config 参数说明 LCD 接口参数说明 lcd_driver_name Lcd 屏驱动的名字&#xff08;字符串&#xff09;&#xff0c;必须与屏驱动的名字对应。 lcd_model_name Lcd 屏模型名字&#xff0c;非必须&#xff0c;可以用于同个屏驱动中进一步区分不同屏。 lcd_if Lcd Inte…