LeetCode 1111. 有效括号的嵌套深度(奇偶分离)

1. 题目

有效括号字符串 仅由 "("")" 构成,并符合下述几个条件之一:

  • 空字符串
  • 连接,可以记作 AB(A 与 B 连接),其中 A 和 B 都是有效括号字符串
  • 嵌套,可以记作 (A),其中 A 是有效括号字符串

类似地,我们可以定义任意有效括号字符串 s 的 嵌套深度 depth(S):

  • s 为空时,depth("") = 0
  • s 为 A 与 B 连接时,depth(A + B) = max(depth(A), depth(B)),其中 A 和 B 都是有效括号字符串
  • s 为嵌套情况,depth("(" + A + ")") = 1 + depth(A),其中 A 是有效括号字符串
    例如:"","()()",和 "()(()())" 都是有效括号字符串,嵌套深度分别为 0,1,2,而 ")(" 和 "(()" 都不是有效括号字符串。

给你一个有效括号字符串 seq,将其分成两个不相交的子序列 A 和 B,且 A 和 B 满足有效括号字符串的定义(注意:A.length + B.length = seq.length)。

现在,你需要从中选出 任意 一组有效括号字符串 A 和 B,使 max(depth(A), depth(B)) 的可能取值最小

返回长度为 seq.length 答案数组 answer ,选择 A 还是 B 的编码规则是:如果 seq[i] 是 A 的一部分,那么 answer[i] = 0。否则,answer[i] = 1。
即便有多个满足要求的答案存在,你也只需返回 一个。

示例 1:
输入:seq = "(()())"
输出:[0,1,1,1,1,0]示例 2:
输入:seq = "()(())()"
输出:[0,0,0,1,1,0,1,1]提示:
1 <= text.size <= 10000

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/maximum-nesting-depth-of-two-valid-parentheses-strings
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

  • 题目意思是,尽可能的让拆开的两个括号的 最大嵌套深度 最小
  • 那就按照深度分成奇数层、偶数层,分别拿出来就行了

在这里插入图片描述

class Solution {
public:vector<int> maxDepthAfterSplit(string seq) {int i, j = 0, depth = 0;vector<int> ans(seq.size(),0);char prev = '*';for(i = 0; i < seq.size(); ++i,++j){if(prev == ')')depth--;if(seq[i] == '(')depth++;if(depth & 1)//奇数层ans[j] = 1;prev = seq[i];// cout << depth << " ";}return ans;}
};

在这里插入图片描述

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

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

相关文章

一首好听的音乐

昨天在不经意间突然听到一首超好听的曲子&#xff0c;来自班得瑞的《赞美主》,一直狂听好几个小时&#xff0c;音乐实在太美了&#xff0c;似同宁静的山谷中发出最自然的声音&#xff0c;让人心旷神怡&#xff0c;真是一种享受。一直以来都认为古典音乐是最美的&#xff0c;没想…

bpsk调制及解调实验_无线通信中的IQ调制,BPSK调制,QPSK调制,16QAM调制的理解...

欢迎FPGA工程师加入官方微信技术群点击蓝字关注我们FPGA之家-中国最好最大的FPGA纯工程师社群先从IQ调制说起&#xff1a;IQ调制&#xff1a;IQ解调原理&#xff1a;Linux下使用GNU Octave运行下面的代码&#xff1a;MATLAB123456t-1:0.001:1;f1;ycos(2*pi*2*f*t);subplot(1,2,…

突发!图森未来CEO侯晓迪被罢免,公司疑遭SEC、FBI联手调查,市值一夜砍半

编辑 | 泽南、小舟来源 | 机器之心侯晓迪&#xff1a;我被「无故撤职」了。自动驾驶领域又有大事发生。著名自动驾驶卡车公司图森未来&#xff08;TuSimple, TSP&#xff09;10 月 31 日突然表示&#xff0c;已将首席执行官兼联合创始人侯晓迪解雇&#xff0c;该决定立即生效。…

异常处理的最佳习惯

一个被良好设计的错误处理代码块集可以让程序更健壮并且面临更少的崩溃机会&#xff0c;因为这样的应用程序对错误进行了处理。下面的列表包含了异常处理最佳习惯中的建议&#xff1a;知道什么时候要设立 try/catch 块。例如&#xff0c;你可以通过编程来检查可能发生在使用异常…

LeetCode 299. 猜数字游戏

1. 题目 你正在和你的朋友玩 猜数字&#xff08;Bulls and Cows&#xff09;游戏&#xff1a;你写下一个数字让你的朋友猜。 每次他猜测后&#xff0c;你给他一个提示&#xff0c;告诉他有多少位数字和确切位置都猜对了&#xff08;称为“Bulls”, 公牛&#xff09;&#xff0…

手机内部零件名称图解_旧手机回收后都干嘛了?

以下为正文有问题不懂&#xff1f;有事情不知道&#xff1f;疑难问题需要求解&#xff1f;快来汉中艾特闹APP提问贴心小编和60万汉中艾特闹粉丝为你解答‍汉中艾特闹APP【有问必答】栏目已上线新一期网友提问来了↓↓↓网友提问旧手机回收后都干嘛了&#xff1f;对此问题&#…

AI取代人类,可以自动生成prompt了

文 | 智商掉了一地如何才能让大型语言模型按照我们的要求去做&#xff1f;这篇文章给出了回答——近期在 NLP 领域风很大的话题莫过于 Prompt&#xff0c;尤其当大型语言模型&#xff08;LLM&#xff09;与其结合&#xff0c;更是拉近了我们与应用领域之间的距离&#xff0c;当…

Atmospheric Scattering

以前由于硬件限制&#xff0c;很多游戏的天空和地面颜色主要是用贴图模拟&#xff0c;近来硬件的发展&#xff0c;越来越多的游戏开始采用基于比较真实的大气散射模型来实时计算。很多文章的计算最终都将眼睛高度和角度作为参数&#xff0c;这里主要按照Sean O’Neil系列的方法…

程序员面试金典 - 面试题 10.11. 峰与谷(排序/不排序)

1. 题目 在一个整数数组中&#xff0c;“峰”是大于或等于相邻整数的元素&#xff0c;相应地&#xff0c;“谷”是小于或等于相邻整数的元素。 例如&#xff0c;在数组{5, 8, 2, 6, 3, 4, 3}中&#xff0c;{8, 6}是峰&#xff0c; {3, 2}是谷。 现在给定一个整数数组&#xf…

计算机视觉自学进阶路上不可忽略的几个原创公众号

人工智能行业目前已接近饱和状态&#xff0c;如何从内卷中脱颖而出&#xff0c;除了极强的自律之外&#xff0c;系统性的学习方法也很重要。今天给大家推荐10个原创公众号&#xff0c;这些公众号定期会发些高质量原创&#xff0c;希望可以让你更高效的学习。深度学习与图网络最…

python列表功能默写_初识 Python 作业及默写

1、简述变量量命名规范 2、name input(“>>>”) name变量是什么数据类型? 3.if条件语句的基本结构? 4.用print打印出下面内容: 文能提笔安天下, 武能上马定乾坤. 心存谋略何人胜, 古今英雄唯是君. 5.利用if语句写出猜⼤小的游戏: 设定一个理想数字比如:66&#xff…

关于淘宝的无耻!

前两天在TAOBAO上以个人名义买了两个CN域名,买了之后才知道个人是无权购买CN域名的,这也就是说个人够买的CN域名是没有任何保障的!在购买前,买家没有给出提醒,很明显,买家存在欺诈行为,所以我向TAOBAO发起投诉.下面是投诉处理结果:据淘宝游戏频道免责声明&#xff0c;如买家通过…

整顿职场,从 ROC 曲线开始

文 | 天于刀刀大家好&#xff0c;我是刀刀。这周有个哥们在组会上被领导刁难了一波&#xff0c;来群里吐槽&#xff0c;最后意外地在大神的指导下又复习了一下 precision recall rate &#xff08;PRR&#xff09; 和 ROC 曲线的知识点&#xff1a;后面聊天的画风就彻底转向吐槽…

数据结构--树状数组

文章目录1. 树状数组2. 单点修改3. 区间修改4. 完整代码5. 参考文献1. 树状数组 类似数据结构&#xff1a;线段树&#xff08;Segment Tree&#xff09; 树状数组 跟 线段树 的区别&#xff1a; 树状数组能做的事情&#xff0c;线段树都能做&#xff01;&#xff08;线段树功…

python异常数据处理_Python爬虫提高之异常处理

Python爬虫框架之异常处理 任何访问服务器获取数据的请求&#xff0c;都需要做异常处理&#xff0c;当然爬虫更需要我们对各种异常进行处理。只有这样才能提高爬虫的健壮性。如果我们的爬虫足够健壮&#xff0c;那么就能确保程序几个月不停止。 我们从以下几个方面做出讲解&…

BERT部署加速622%,YOLOv7部署加速590%,这款开源压缩神器火了!

导读 众所周知&#xff0c;计算机视觉技术&#xff08;CV&#xff09;是企业人工智能应用比重最高的领域之一。为降低企业成本&#xff0c;工程师们一直在探索各类模型压缩技术&#xff0c;来产出“更准、更小、更快”的AI模型部署落地。而在自然语言处理领域&#xff08;NLP&…

程序员面试金典 - 面试题 10.10. 数字流的秩(map/树状数组)

文章目录1. 题目2. 解题2.1 map2.2 树状数组1. 题目 假设你正在读取一串整数。每隔一段时间&#xff0c;你希望能找出数字 x 的秩(小于或等于 x 的值的个数)。 请实现数据结构和算法来支持这些操作&#xff0c;也就是说&#xff1a; 实现 track(int x) 方法&#xff0c;每读入…

python常用函数的用法_python中常用函数整理

1、map map是python内置的高阶函数&#xff0c;它接收一个函数和一个列表&#xff0c;函数依次作用在列表的每个元素上&#xff0c;返回一个可迭代map对象。 class map(object):""" map(func, *iterables) --> map objectMake an iterator that computes the…

.NET中得到计算机硬件信息

VB.NET中得到计算机硬件信息 本文汇集了在.net中得到计算机硬件信息的一些功能。 得到显示器分辨率 Dim X As Short System.http://dev.21tx.com/os/windows/" target"_blank">Windows.Forms.Screen.PrimaryScreen.Bounds.Width Dim Y As Short System.…

diffusion新高度!可一次性生成200张图??

文 | Pine 明敏&#xff08;凹非寺&#xff09;源 | 量子位给AI一个提示词&#xff0c;一次性出200张图&#xff01;生成速度嗖嗖的&#xff0c;不到3分钟全搞定。喜欢哪张任君挑选&#xff0c;还能直接二次调整编辑。咱就是说&#xff0c;这回用AI画画&#xff0c;终于不废人了…