Skip to content

Practice Remove Invalid Parentheses

Read the task, work through the examples, and check your approach against the constraints. Use the original LeetCode task for coding and submissions.

Hard#301
LeetCode Problem

Remove Invalid Parentheses

Problem Statement

Given a string s that contains parentheses and letters, remove the minimum number of invalid parentheses to make the input string valid. Return a list of unique strings that are valid with the minimum number of removals. You may return the answer in any order.

Source: Remove Invalid Parentheses on LeetCode. Use the original task for its coding environment and submissions.

Examples

# Example 1

Input
s = "()())()"
Output
["(())()","()()()"]

# Example 2

Input
s = "(a)())()"
Output
["(a())()","(a)()()"]

# Example 3

Input
s = ")("
Output
[""]

Constraints

1 <= s.length <= 25
s consists of lowercase English letters and parentheses '(' and ')'.
There will be at most 20 parentheses in s.

Related LeetCode Problems

Practice more problems similar to Remove Invalid Parentheses.

Review your practice with PhantomCodeAI

After trying the problem yourself, use the app to discuss your approach, complexity, and edge cases.