首页 > 试题广场 >

括号匹配

[编程题]括号匹配
  • 热度指数:138 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 128M,其他语言256M
  • 算法知识视频讲解
给定一个只包含左右括号的合法括号序列,按右括号从左到右的顺序输出每一对配对的括号出现的位置(括号序列以0开始编号)。

输入描述:
仅一行,表示一个合法的括号序列。 长度不超过100000。


输出描述:
设括号序列有n个右括号。则输出包括n行,每行两个整数l,r,表示配对的括号左括号出现在第l位,右括号出现在第r位。
示例1

输入

(())()

输出

1 2
0 3
4 5
头像 小蒲想变强
发表于 2021-09-15 09:12:41
双栈解法:c代码写两个简单的栈表就好了🦆。一个char栈保存'('和')'一个int数组保存每一次的'('的地址。 #include<stdio.h> #include<string.h> int main() { char a[10000000];//保证case 展开全文

问题信息

上传者:小小
难度:
4条回答 1954浏览

热门推荐

通过挑战的用户

括号匹配