Question 3.

This is your interview question.

Question 3. Longest Valid Parentheses

Given a string containing just the characters '(' and ')', return the length of the longest valid (well-formed) parentheses substring.

 

Example 1:

Input: s = "(()"
Output: 2
Explanation: The longest valid parentheses substring is "()".

Example 2:

Input: s = ")()())"
Output: 4
Explanation: The longest valid parentheses substring is "()()".

Example 3:

Input: s = ""
Output: 0
 

Constraints:

  • 0 <= s.length <= 3 * 104

  • s[i] is '(', or ')'.

class Solution(object):

def longestValidParentheses(self, s):

"""

:type s: str

:rtype: int

"""