news 2026/5/23 19:03:17

【ACWing】150. 括号画家

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【ACWing】150. 括号画家

题目地址:

https://www.acwing.com/problem/content/152/

达达是一名漫画家,她有一个奇特的爱好,就是在纸上画括号。这一天,刚刚起床的达达画了一排括号序列,其中包含小括号 ( )、中括号 [ ] 和大括号 { },总长度为N NN
这排随意绘制的括号序列显得杂乱无章,于是达达定义了什么样的括号序列是美观的:

  1. 空的括号序列是美观的;
  2. 若括号序列 A是美观的,则括号序列 (A)、[A]、{A}也是美观的;
  3. 若括号序列 A、B都是美观的,则括号序列AB也是美观的。例如[(){}]()是美观的括号序列,而)({)[}](则不是。

现在达达想在她绘制的括号序列中,找出其中连续的一段,满足这段子串是美观的,并且长度尽量大。你能帮帮她吗?

输入格式:
输入一行由括号组成的字符串。

输出格式:
输出一个整数,表示最长的美观的子段的长度。

数据范围:
字符串长度不超过1 0 5 10^5105

可以用栈来做。当栈空,或者栈顶与遍历到的字符不匹配的时候,将下标入栈。这样栈顶存的就是最长美观子串的起始位置。如果匹配,则pop栈顶,并更新答案。代码如下:

#include<iostream>#include<stack>usingnamespacestd;intn;string s;intmain(){ios::sync_with_stdio(false);cin.tie(nullptr);cin>>s;n=s.size();s=" "+s;automatch=[](chara,charb){returna=='('&&b==')'||a=='['&&b==']'||a=='{'&&b=='}';};stack<int>stk;intres=0;for(inti=1;i<=n;i++){charch=s[i];if(ch=='('||ch=='['||ch=='{')stk.push(i);else{if(stk.empty()||!match(s[stk.top()],ch))stk.push(i);else{stk.pop();res=max(res,i-(stk.size()?stk.top():0));}}}printf("%d\n",res);}

时空复杂度O ( N ) O(N)O(N)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/20 10:54:26

EmotiVoice在儿童玩具问答系统中的活泼语音表现

EmotiVoice在儿童玩具问答系统中的活泼语音表现 在智能玩具越来越“懂孩子”的今天&#xff0c;一个关键问题正被重新定义&#xff1a;机器该以什么样的声音与孩子对话&#xff1f; 过去&#xff0c;我们习惯了电子宠物里那种机械重复、毫无起伏的“机器人腔”。它能回答“11等…

作者头像 李华
网站建设 2026/5/21 7:10:58

EmotiVoice语音活力指数调节适应不同受众

EmotiVoice语音活力指数调节适应不同受众 在虚拟偶像直播中突然“破防”大笑&#xff0c;在儿童教育APP里用温柔语调讲故事&#xff0c;又能在紧急警报时瞬间切换成铿锵有力的播报声——这不再是科幻电影中的桥段&#xff0c;而是当下情感化TTS技术正在实现的真实交互体验。随着…

作者头像 李华
网站建设 2026/5/13 12:47:10

【单片机毕业设计】【dz-978】基于单片机的智能视频对讲系统设计

一、功能简介项目名&#xff1a;基于单片机的智能视频对讲系统设计 项目编号&#xff1a;dz-978 单片机类型&#xff1a;STM32F103C8T6 具体功能&#xff1a; 1、通过摄像头可以进行远程将画面和声音传输到手机APP上&#xff0c;可将画面存储的内存卡里面&#xff1b; 2、通过按…

作者头像 李华
网站建设 2026/5/18 15:36:49

终极免费报表生成器:FastReport Open Source完整指南

终极免费报表生成器&#xff1a;FastReport Open Source完整指南 【免费下载链接】FastReport Free Open Source Reporting tool for .NET6/.NET Core/.NET Framework that helps your application generate document-like reports 项目地址: https://gitcode.com/gh_mirrors…

作者头像 李华
网站建设 2026/5/22 3:17:54

EmotiVoice能否生成带有方言腔调的普通话?混合语音实验

EmotiVoice能否生成带有方言腔调的普通话&#xff1f;混合语音实验 在智能语音助手逐渐走进千家万户的今天&#xff0c;一个看似细微却影响深远的问题浮现出来&#xff1a;为什么这些“会说话”的机器总是一口标准播音腔&#xff1f;对于四川人来说&#xff0c;听到一句慢悠悠带…

作者头像 李华