sunxiaofan @ 2022-02-09 16:49:40
这个题目恶心到我了,总算是过了。下面写一下我对题目含义的个人理解,希望是对的。
扫一遍这个括号序列,每遇到一个右括号,如‘]’‘)’,就找上一个没有被匹配过的左括号。如果这两个括号是可以匹配的,则匹配;如果不能匹配,则不管这个右括号,继续向右扫。整个序列扫完一遍之后,再扫一遍。如果遇到没有匹配过的左括号或者右括号,直接输出一对括号。
提供两组样例:
样例一:
([)]
输出:
()[()]
解释:
读入时,遇到的第一个右括号是第3位的‘)’,但是上一个没有被匹配过的左括号是第2位的‘[’,所以不管这个右括号。继续,下一个右括号是第4位的‘]’,上一个没有匹配过的左括号还是第2位的‘[’,所以匹配成功。
第一遍匹配结束之后,第1位的‘(’和第3位的‘)’是没有被匹配过的,所以在原位变成一对。
样例二:(其实也是本题的测试点一)
([(]
输出:
()[]()[]
希望能为看到这个帖子的大佬们节省一些时间。
by 子小木木 @ 2022-02-11 19:43:45
啊这。。。题面毒瘤啊
by wyl13479387613 @ 2022-02-11 21:49:43
个人认为题面没问题,建议认真审题~~~~
by hyf9134 @ 2022-03-08 00:02:17
感谢大佬。
by 算法拾遗 @ 2022-04-03 12:10:29
@wyl13479387613 这个“补全括号”就很具有歧义,比如说:
([)]
可以这样补全:
也可以这样补全:
甚至可以这样补全:
题目根本就没有定义哪个“补全”才是真正的补全
强烈建议洛谷修改题面
by DiDi123 @ 2022-04-16 11:32:18
感谢大佬
by DM11 @ 2022-04-29 20:45:31
题面根本没讲清楚是怎么个补全法
by Freuds @ 2022-04-30 11:56:40
@sunxiaofan 切中肯綮了
by 图书管理员 @ 2022-06-16 15:38:43
谢谢你,按照你这个来做就很简单,一下子就A了
by hate_fake_world @ 2022-11-28 16:14:34
%%%%%%%%阿里嘎多!
by Etsuya233 @ 2023-01-27 15:10:57
谢谢你%%%%%