Description
Solutions
Balancing Parentheses
πŸ”₯ FULLTIME

Given a string that consists of left and right parentheses, '(' and ')', balance the parentheses by inserting parentheses as necessary. Determine the minimum number of characters that must be inserted.

Function Description

Complete the function balanceParentheses in the editor.

balanceParentheses has the following parameter:

  1. String s: a string of parentheses

Returns

int: the minimum number of insertions needed

♫⋆qβ™ͺ β‚ŠΛšβ™¬ ゚.Huge Thanks to spike!!𓂃 πŸ³π“ˆ’π“Έ

Example 1:

Input:  s = "()))"
Output: 2
Explanation:
Insert a '(' 2 times at the beginning of the string to make it valid: '((()))'

Example 2:

Input:  s = "))(("
Output: 4
Explanation:
Insert 2 left parentheses at the start and 2 right parentheses at the end of the string to get "(()))(())" after 4 insertions.

Example 3:

Input:  s = "(()))"
Output: 1
Explanation:
Insert 1 left paranthesis at the left end of the string to get '((()))'. The string is balanced after 1 insertion.

Example 4:

Input:  s = "()()"
Output: 0
Explanation:
The sequence is already valid.
Constraints:

    1 ≀ length of s ≀ 105

Thumbnail 0
Testcase

Result
Case 1

input:

output: