From 87f9a2fba03adaabdac9b21b6fe0fc5ba05121bf Mon Sep 17 00:00:00 2001 From: Deven <63876261+devenperez@users.noreply.github.com> Date: Mon, 26 Dec 2022 20:50:35 -0500 Subject: [PATCH] Time: 21 ms (89.04%), Space: 13.7 MB (67.89%) - LeetHub --- .../22-generate-parentheses.py | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 22-generate-parentheses/22-generate-parentheses.py diff --git a/22-generate-parentheses/22-generate-parentheses.py b/22-generate-parentheses/22-generate-parentheses.py new file mode 100644 index 0000000..b391b44 --- /dev/null +++ b/22-generate-parentheses/22-generate-parentheses.py @@ -0,0 +1,20 @@ +class Solution(object): + def generateParenthesis(self, n): + """ + :type n: int + :rtype: List[str] + """ + return self.createSets("(", 1, n - 1) + + def createSets(self, current, opened, yetToOpen): + if opened == 0 and yetToOpen == 0: + return [current] + + returnSet = [] + if yetToOpen > 0: + returnSet += self.createSets(current + "(", opened + 1, yetToOpen - 1) + + if opened > 0: + returnSet += self.createSets(current + ")", opened - 1, yetToOpen) + + return returnSet \ No newline at end of file