问题 B: [蓝桥杯 2017 省 A] 正则问题

内存限制:256 MB 时间限制:1 S
题面:传统 评测方式:文本比较 上传者:
提交:16 通过:9

题目描述



正则表达式由普通字符(如字母、数字等)和特殊字符(称为元字符)组成的字符串。正则表达式的主要用途包括文本搜索和替换、验证数据(如表单输入)、过滤文本等。

考虑一种简单的正则表达式:

只由 `x` `(` `)` `|` 组成的正则表达式。

小明想求出这个正则表达式能接受的最长字符串的长度。  

例如 `((xx|xxx)x|(x|xx))xx` 能接受的最长字符串是: `xxxxxx`,长度是 $6$。

其求解过程为:

1. ((xx|xxx)x|(x|xx))xx    ---->

    或运算

2.((xxx)x|(x|xx))xx     ---->

               或运算

3.((xxx)x|(xx))xx     ---->

4. (xxxx|(xx))xx     ---->

5. (xxxx)xx     ---->

6.xxxxxx


输入格式


一个由 `x()|` 组成的正则表达式。输入长度不超过 $100$,保证合法。

输出格式


这个正则表达式能接受的最长字符串的长度。

输入样例 复制

((xx|xxx)x|(x|xx))xx

输出样例 复制

6