蓝桥杯官网练习题(正则问题)

题目描述

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

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

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

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

输入描述

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

输出描述

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

输入输出样例

示例
输入

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

输出

6

运行限制

java 复制代码
import java.util.Scanner;

public class Main {
  static int index=-1;
  static Scanner scan = new Scanner(System.in);
  static String str=scan.next();
    public static void main(String[] args) {
        System.out.println(dfs());
    }
    public static int dfs(){
      int max=Integer.MIN_VALUE;
      int count=0;
      while(index<str.length()-1){
        index++;
        if(str.charAt(index)=='('){
          count+=dfs();
        }
        else if(str.charAt(index)=='x'){
          count++;
        }
        else if(str.charAt(index)=='|'){
          max=Math.max(max,count);
          count=0;
        }
        else if(str.charAt(index)==')'){
          break;
        }
      }
      return Math.max(max,count);
    }
}
    • 最大运行时间:1s
    • 最大运行内存: 256M
相关推荐
SunShaoLu6 小时前
实测7款思维导图工具图片导出能力:PNG/SVG/PDF全支持,附选型指南
职场和发展·效率工具·思维导图
闪电悠米7 小时前
力扣hot100-48.旋转图像-转置翻转详解
算法·leetcode·职场和发展
stolentime12 小时前
SP8549 MAIN75 - BST again题解
c++·算法·二叉树·深度优先·图论·记忆化搜索·组合数学
ychqsq17 小时前
95.归位
经验分享·职场和发展
小poop17 小时前
算法复杂度:从入门到面试必备
算法·面试·职场和发展
网安老伯19 小时前
网络安全基础要点知识介绍(非常详细),零基础入门到精通,看这一篇就够了
运维·前端·网络协议·web安全·网络安全·职场和发展
叩码以求索1 天前
浅谈:算法萌新如何高效刷题应对面试(一)
算法·面试·职场和发展
谙弆悕博士1 天前
信息系统项目管理师教程(第4版)笔记——第 2 章 信息技术发展
笔记·职场和发展·软考高级·软考·高项·项目经理
wdfk_prog1 天前
嵌入式面试真题第 13 题:单硬件 Timer 下的高精度多路软件定时器架构设计
c语言·开发语言·面试·职场和发展·嵌入式
龙虾PRO2 天前
能源与股票量化核心差异,AI全链路落地实操手册
java·面试·职场和发展