Python 97.19% faster | Simplest solution with explanation | Beg to Adv | Greedy
python\nclass Solution:\n    def lemonadeChange(self, bills: List[int]) -> bool:\n        count5 = 0 # taking counter for $5\n        count10 = 0 # taking count
```python\nclass Solution:\n    def lemonadeChange(self, bills: List[int]) -> bool:\n        count5 = 0 # taking counter for $5\n        count10 = 0 # taking counter for $10\n        for b in bills: # treversing the list of bills.\n            if b == 5: \n                count5+=1 # if the bill is 5, incresing the 5 counter.\n            elif b == 10:\n                if count5 == 0: # if the bill is 10 & we dont have change to return, then its false.\n                    return False\n                count10+=1 # increasing the 10 counter\n                count5-=1 # decreasing 5 counter as we`ll give 5 as change. \n            else: # if the bill is of $20\n                if (count5>=1 and count10>=1):# checking if we have enough change to return\n                    count5-=1 # if its a $20 , then $5 as change and \n                    count10-=1 # one $10\n                elif count5>=3: # fi we dont have $10 as change, though we have three $3.\n                    count5-=3 # decresing the $3 counter. \n                else:\n                    return False\n        return True\n        \n        ```\n***Found helpful, Do upvote !!***\n
['Greedy', 'Python', 'Python3']