[pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci
This commit is contained in:
pre-commit-ci[bot] 2024-10-31 06:28:15 +00:00
parent 074e3c8732
commit 31dc532e27

View File

@ -1,50 +1,52 @@
def isParenthesis(c):
return ((c == '(') or (c == ')'))
return (c == "(") or (c == ")")
def isValidString(str):
cnt = 0
for i in range(len(str)):
if (str[i] == '('):
cnt += 1
elif (str[i] == ')'):
cnt -= 1
if (cnt < 0):
return False
return (cnt == 0)
# method to remove invalid parenthesis
cnt = 0
for i in range(len(str)):
if str[i] == "(":
cnt += 1
elif str[i] == ")":
cnt -= 1
if cnt < 0:
return False
return cnt == 0
# method to remove invalid parenthesis
def removeInvalidParenthesis(str):
if (len(str) == 0):
return
visit = set()
q = []
temp = 0
level = 0
q.append(str)
visit.add(str)
while(len(q)):
str = q[0]
q.pop(0)
if (isValidString(str)):
print(str)
level = True
if (level):
continue
for i in range(len(str)):
if (not isParenthesis(str[i])):
continue
temp = str[0:i] + str[i + 1:]
if temp not in visit:
q.append(temp)
visit.add(temp)
if len(str) == 0:
return
visit = set()
q = []
temp = 0
level = 0
q.append(str)
visit.add(str)
while len(q):
str = q[0]
q.pop(0)
if isValidString(str):
print(str)
level = True
if level:
continue
for i in range(len(str)):
if not isParenthesis(str[i]):
continue
temp = str[0:i] + str[i + 1 :]
if temp not in visit:
q.append(temp)
visit.add(temp)
expression = "()())()"
removeInvalidParenthesis(expression)
expression = "()v)"
removeInvalidParenthesis(expression)