首页 > 试题广场 >

迷失的括号序列

[编程题]迷失的括号序列
  • 热度指数:1429 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
牛妹有括号序列brackets,因为过了太久,导致里面有些括号看不清了,所以用代替,她想知道这个括号序列能不能恢复成合法的括号序列。具体操作是将改为'('或者')'。brackets只由'?','(',')'构成。
合法的括号序列的定义:
1.空字符为合法括号序列
2.(+合法括号序列+) 为合法括号序列
3.()+合法括号序列为合法括号序列

如果能构造出来则返回恢复后任意合法的括号序列,否则返回Impossible


示例1

输入

"()?)"

输出

"()()"

说明

把?替换为(即可

备注:
给定brackets字符串 
头像 未来0116
发表于 2021-08-09 22:30:36
一.题目描述NC536迷失的括号妹有括号序列brackets,因为过了太久,导致里面有些括号看不清了,所以用??代替,她想知道这个括号序列能不能恢复成合法的括号序列。具体操作是将??改为'('或者')'。brackets只由'?','(',')'构成。合法的括号序列的定义:1.空字符为合法括号序列2 展开全文
头像 认认真真coding
发表于 2021-08-09 10:16:13
题目描述题目给出括号序列brackets,要求判断此序列是否合法。并且具体操作是将??改为'('或者')'。brackets只由'?','(',')'构成。合法的括号序列的定义:1.空字符为合法括号序列2.(+合法括号序列+) 为合法括号序列3.()+合法括号序列为合法括号序列 如果能构造出来则返回 展开全文
头像 AimerAimer
发表于 2021-10-14 00:10:32
题意:         给定一个包含三种字符(左括号,右括号和问号)的字符串,其中 问号 可以改为 左括号 或 右括号。         现问是否可以将原字符串修改为 合法的 展开全文
头像 牛客313925129号
发表于 2021-08-05 17:35:06
题意理解 给定一个字符串,由()?组成,?可以代替为(或者),判断能否在替换后,使得字符串变成是括号合法的,若可以则随意输出一种合法的结果。括号合法的要求:1.空字符为合法括号序列2.(+合法括号序列+) 为合法括号序列3.()+合法括号序列为合法括号序列 方法一 首先,对于基础的括号匹配问题,我们 展开全文
头像 摸鱼学大师
发表于 2021-08-06 15:46:29
思路: 题目的主要信息: 一个序列中仅有"("、")"、"?"三种符号,将其中的"?"替换成任意括号,使之变成一个括号合法的序列 括号合法的序列定义: 空序列一定合法 (+合法括号序列+) 为合法括号序列 ()+合法括 展开全文
头像 Tag_Kausal
发表于 2020-02-15 13:52:10
首先我们需要知道如何去判断一个括号序列是否合法,我们需要括号序列的任何一个前缀中左括号的个数大于等于右括号的个数,并且右括号总个数等于左括号总个数。首先我们要判断是否为偶数,因为奇数左括号右括号个数肯定就不相等了。总长度是,所以左括号个数应为,当然如果当前括号序列里面的左括号个数大于,那么也是不行的 展开全文

问题信息

难度:
6条回答 4461浏览

热门推荐

通过挑战的用户

查看代码