题目描述
给定一个括号字符串str,返回最长的能够完全正确匹配括号字符字串的长度。
输入描述:

输出一行字符串,代表str。

输出描述:

输出一个整数,代表括号字符串的最长有效长度。

示例1
输入 (()()) 输出 6
示例2
输入 ()) 输出 2
<>解法一动态规划
import java.io.*; import java.util.*; public class Main{ public static void
main(String[] args) throws Exception{ BufferedReader br = new BufferedReader(new
InputStreamReader(System.in)); String s = br.readLine(); int res = getRes(s);
System.out.println(res); } public static int getRes(String s){ if(s==null||s.
length()<2) return 0; int pre = 0; int res = 0; int[] dp = new int[s.length()];
char[] arr = s.toCharArray(); for(int i=1;i<s.length();i++){ if(arr[i]==')'){
pre= i-dp[i-1]-1; if(pre>=0&&arr[pre]=='('){ //注意这里得加括号 艹... dp[i] = dp[i-1]+2+(
pre>0?dp[pre-1]:0); res = Math.max(res,dp[i]); } } } return res; } }

技术
©2019-2020 Toolsou All rights reserved,
车主无忧:为什么放弃开源Kafka?必传之作!Alibaba内部出品Redis深度笔记及源码宝典统信UOS首次公布软件适配:QQ、微信、迅雷都有了阿里开发10年技术核心总结,Springboot+Redis文档,送给努力上进的程序员python画爱心Docker容器数据卷详解(共享数据)为何华为的5G专利高居第一名,却还被高通要求缴纳专利费?Spring循环依赖三级缓存是否可以减少为二级缓存?C#中字典的排序方法面试还不会Spring?阿里P8总结的100道面试解析,让你实锤面试官