921. Minimum Add to Make Parentheses Valid
921. Minimum Add to Make Parentheses Valid
Description
A parentheses string is valid if and only if:
- It is the empty string,
- It can be written as
AB(Aconcatenated withB), whereAandBare valid strings, or - It can be written as
(A), whereAis a valid string.
You are given a parentheses string s. In one move, you can insert a parenthesis at any position of the string.
- For example, if
s = "()))", you can insert an opening parenthesis to be"(**(** )))"or a closing parenthesis to be"())**)** )".
Return the minimum number of moves required to make s valid.
Example 1:
1 | Input: s = "())" |
Example 2:
1 | Input: s = "(((" |
Constraints:
1 <= s.length <= 1000s[i]is either'('or')'.
Hints/Notes
- 2025/01/27
- greedy
- Leetcode solution(checked)
Solution
Language: C++
1 | class Solution { |