def pda_accept(string):
stack = []
for char in string:
if char == 'a':
stack.append('a')
elif char == 'b':
if len(stack) == 0 or stack[-1] != 'a':
return False
stack.pop()
return len(stack) == 0
print
(pda_accept
("ab"
)) #
Trueprint
(pda_accept
("aabb"
)) #
Trueprint(pda_accept("aab")) # False
ZGVmIHBkYV9hY2NlcHQoc3RyaW5nKToKICAgIHN0YWNrID0gW10KICAgIGZvciBjaGFyIGluIHN0cmluZzoKICAgICAgICBpZiBjaGFyID09ICdhJzoKICAgICAgICAgICAgc3RhY2suYXBwZW5kKCdhJykKICAgICAgICBlbGlmIGNoYXIgPT0gJ2InOgogICAgICAgICAgICBpZiBsZW4oc3RhY2spID09IDAgb3Igc3RhY2tbLTFdICE9ICdhJzoKICAgICAgICAgICAgICAgIHJldHVybiBGYWxzZQogICAgICAgICAgICBzdGFjay5wb3AoKQogICAgcmV0dXJuIGxlbihzdGFjaykgPT0gMAoKcHJpbnQocGRhX2FjY2VwdCgiYWIiKSkgIyBUcnVlCnByaW50KHBkYV9hY2NlcHQoImFhYmIiKSkgIyBUcnVlCnByaW50KHBkYV9hY2NlcHQoImFhYiIpKSAjIEZhbHNl