lanqiao OJ 106 正则问题

简介: lanqiao OJ 106 正则问题

1.正则问题 - 蓝桥云课 (lanqiao.cn)

1.一个左括号必然与一个有括号匹配

2.一定是先算最里边的括号

#include<iostream>
#include<cstring>
#include<algorithm>
 
using namespace std ;
string s ;
int pos ;//从头到尾遍历的指针
int dfs(){
  int ans = 0 , tmp = 0 ;
  while(pos < s.size()){//只要不遍历到底就一直循环
    if(s[pos] == '('){//遇到左括号就进去dfs
      pos ++ ; tmp += dfs() ;
    }
    else if(s[pos] == ')') {//遇到右括号就结束在这一层的循环
      pos ++ ; break ;
    }
    else if(s[pos] == '|'){//遇到或就取两边的最大值
      pos ++ ; ans = max(ans,tmp) ;
      tmp = 0 ;
    }
    else if(s[pos] == 'x') {//遇到x记录加一
      pos ++ ; tmp ++ ;
    }
    ans = max(ans,tmp) ;//处理最后剩下的一波x
  }
  return ans ; 
}
 
int main(){
  cin >> s ;
  cout << dfs() << endl ;
  return 0 ;
} 
目录
相关文章
|
3天前
lanqiao OJ 1030 蓝肽子序列
lanqiao OJ 1030 蓝肽子序列
13 2
|
3天前
lanqiao OJ 1388 寒假作业
lanqiao OJ 1388 寒假作业
15 0
|
3天前
lanqiao OJ 689 四阶幻方
lanqiao OJ 689 四阶幻方
10 0
|
3天前
lanqiao OJ 649 算式900
lanqiao OJ 649 算式900
10 1
|
3天前
lanqiao OJ 389 摆花
lanqiao OJ 389 摆花
8 2
|
1天前
lanqiao oj 1085 小猪存钱罐
lanqiao oj 1085 小猪存钱罐
6 0
|
1天前
lanqiao oj 1050 补给
lanqiao oj 1050 补给
8 0
|
2天前
lanqiao OJ 1217 求立方根
lanqiao OJ 1217 求立方根
7 0
|
2天前
lanqiao OJ 1591 “123”
lanqiao OJ 1591 “123”
9 0
|
3天前
lanqiao OJ 149 长草
lanqiao OJ 149 长草
6 0