Given a string containing just the characters '('
and ')'
, find the length of the longest valid (well-formed) parentheses substring.
使用 领扣中国,来获得适合您的内容以及最佳的用户体验。
即刻前往 | 将我的账号同步到 LeetCode 中国
LeetCode
Explore
Problems
Mock
Contest
Articles
Discuss
Store
Premium
New Playground
lifeqiuzhi520
934 54
32. Longest Valid Parentheses
DescriptionHintsSubmissionsDiscussSolution
Time Submitted Status Runtime Language
2 hours, 20 minutes ago Wrong Answer N/A java
2 hours, 20 minutes ago Wrong Answer N/A java
2 hours, 21 minutes ago Runtime Error N/A java
2 hours, 37 minutes ago Wrong Answer N/A java
2 hours, 39 minutes ago Wrong Answer N/A java
2 hours, 39 minutes ago Compile Error N/A java
2 hours, 40 minutes ago Wrong Answer N/A java
2 hours, 45 minutes ago Wrong Answer N/A java
2 hours, 47 minutes ago Wrong Answer N/A java
2 hours, 50 minutes ago Wrong Answer N/A java
NewerOlder
Java
class Solution {
public int longestValidParentheses(String s) {
int maxans = 0;
Stack<Integer> stack = new Stack<>();
stack.push(-1);
for (int i = 0; i < s.length(); i++) {
if (s.charAt(i) == '(') {
stack.push(i);
} else {
stack.pop();
if (stack.empty()) {
stack.push(i);
} else {
maxans = Math.max(maxans, i - stack.peek());
}
}
}
return maxans;
}
}
1
class Solution {
2
public int longestValidParentheses(String s) {
3
int maxans = 0;
4
Stack<Integer> stack = new Stack<>();
5
stack.push(-1);
6
for (int i = 0; i < s.length(); i++) {
7
if (s.charAt(i) == '(') {
8
stack.push(i);
9
} else {
10
stack.pop();
11
if (stack.empty()) {
12
stack.push(i);
13
} else {
14
maxans = Math.max(maxans, i - stack.peek());
15
}
16
}
17
}
18
return maxans;
19
}
20
}
Custom Testcase( Contribute )
Run Code Submit Solution
Submission Result: Accepted More Details
Next challenges: Multiply StringsString CompressionSplit Array into Fibonacci Sequence
Share your acceptance!
Check out our solution!Reveal Solution
Notes
|||
Type here...(Markdown is enabled)
Copyright © 2018 LeetCode Contact Us | Jobs | Frequently Asked Questions | Terms of Service | Privacy Policy