Clean and ordered Solution using Stack
Intuition\n Describe your first thoughts on how to solve this problem. \n\n# Approach\n Describe your approach to solving the problem. \n\n# Complexity\n- Time 
# Intuition\n<!-- Describe your first thoughts on how to solve this problem. -->\n\n# Approach\n<!-- Describe your approach to solving the problem. -->\n\n# Complexity\n- Time complexity:\n<!-- Add your time complexity here, e.g. $$O(n)$$ -->\n\n- Space complexity:\n<!-- Add your space complexity here, e.g. $$O(n)$$ -->\n\n# Code\n```\nclass Solution {\n    public boolean lemonadeChange(int[] bills) {\n        Stack<Integer> stackOf5=new Stack();\n        Stack<Integer> stackOf10=new Stack();\n\n        for(int i=0;i<bills.length;i++)\n        {\n            int input=bills[i];\n            if(input==5)\n            {\n                stackOf5.push(input);\n            }\n\n            else if(input==10)\n            {\n                stackOf10.push(input);\n                if(stackOf5.empty())\n                return false;\n                else\n                stackOf5.pop();\n            }\n\n            else if(input==20)\n            {\n                if(!stackOf10.empty())\n                {\n                    stackOf10.pop();\n                    if(stackOf5.empty())\n                    return false;\n                    else\n                    stackOf5.pop();\n                }\n\n                else if(!stackOf5.empty())\n                {\n                    for(int j=0;j<3;j++)\n                    {\n                        if(stackOf5.empty())\n                        {\n                            return false;\n                        }\n                        stackOf5.pop();\n                    }\n                }\n\n                else\n                {\n                    return false;\n                }\n            }\n        }\n        return true;\n\n    }\n}\n```
['Stack', 'Java']