Backtracking
Complexity\n- Time complexity: O(n!)\n Add your time complexity here, e.g. O(n) \n\n- Space complexity:O(n^2)\n Add your space complexity here, e.g. O(n) \n\n# 
# Complexity\n- Time complexity: $$O(n!)$$\n<!-- Add your time complexity here, e.g. $$O(n)$$ -->\n\n- Space complexity:$$O(n^2)$$\n<!-- Add your space complexity here, e.g. $$O(n)$$ -->\n\n# Code\n```\nclass Solution:\n    def judgePoint24(self, cards: List[int]) -> bool:\n        \n        def generat_results(a, b):\n            res = [a+b, a-b, b-a, a*b]\n            if a:\n                res.append(b/a)\n            if b:\n                res.append(a/b)\n            return res\n\n\n        def check(cards):\n            if len(cards) == 1:\n                return abs(cards[0] - 24.0) <= 0.1\n            for i in range(len(cards)):\n                for j in range(i+1, len(cards)):\n                    new_list = [num for k, num in enumerate(cards) if (k != i and k != j)]\n                    for res in generat_results(cards[i], cards[j]):\n                        new_list.append(res)\n                        if check(new_list):\n                            return True\n                        new_list.pop()\n            return False\n        \n        return check(cards)\n\n\n            \n\n```
['Backtracking', 'Python3']