Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug] 22. Generate Parentheses returns 'Wrong Answer' despite passing test cases in Leetcode #3485

Open
njxue opened this issue Jun 8, 2024 · 0 comments

Comments

@njxue
Copy link

njxue commented Jun 8, 2024

Input: n = 3
Expected Output: ["((()))","(()())","(())()","()(())","()()()"]

It flags the output ["()()()","()(())","(())()","(()())","((()))"] as incorrect. The order of the generated parantheses should not matter.

For reference, this was the code (in Java) that generated the failed test case:

class Solution {
    public List<String> generateParenthesis(int n) {
        List<String> parantheses = new ArrayList<>();
        helper(n, n, "", parantheses);
        return parantheses;
    }

    public void helper(int numOpenRemaining, int numCloseRemaining, String p, List<String> parantheses) {
        if (numOpenRemaining == 0 && numCloseRemaining == 0) {
            parantheses.add(p);
            return;
        }
        if (numOpenRemaining < numCloseRemaining) {
            helper(numOpenRemaining, numCloseRemaining - 1, p + ")", parantheses);
        }
        if (numOpenRemaining > 0) {
            helper(numOpenRemaining - 1, numCloseRemaining, p + "(", parantheses);
        }
    }
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant