diff options
Diffstat (limited to '')
-rw-r--r-- | 20/main.py | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/20/main.py b/20/main.py new file mode 100644 index 0000000..b3c5136 --- /dev/null +++ b/20/main.py @@ -0,0 +1,47 @@ +#!/usr/bin/env python + + +class Solution: + def isValid(self, s: str) -> bool: + stack = [] + for char in s: + if char == "(": + stack.append("(") + elif char == "[": + stack.append("[") + elif char == "{": + stack.append("{") + elif char == ")": + if len(stack) == 0: + return False + if stack[-1] == "(": + stack.pop() + else: + return False + elif char == "]": + if len(stack) == 0: + return False + if stack[-1] == "[": + stack.pop() + else: + return False + elif char == "}": + if len(stack) == 0: + return False + if stack[-1] == "{": + stack.pop() + else: + return False + + if len(stack) != 0: + return False + + return True + + +def main() -> None: + solution = Solution() + + +if __name__ == "__main__": + main() |