Python Easy Solution beats 99%
\nclass Solution:\n    def maxProfitAssignment(self, difficulty: List[int], profit: List[int], worker: List[int]) -> int:\n        ans = 0\n        profitnew = 
```\nclass Solution:\n    def maxProfitAssignment(self, difficulty: List[int], profit: List[int], worker: List[int]) -> int:\n        ans = 0\n        profitnew = sorted(profit, reverse=True)\n        helper = {} #contains the least difficulty for each profit\n        for i in range(len(profit)):\n            helper.setdefault(profit[i], difficulty[i])\n            if difficulty[i]<helper[profit[i]]:\n                helper[profit[i]] = difficulty[i]\n        j = 0\n        for i in sorted(worker, reverse=True):\n            while j < len(profit):\n                if i>=helper[profitnew[j]]:\n                    ans += profitnew[j]\n                    break\n                else:\n                    j += 1\n        return ans\n\t\t\n```\nPlease Upvote if it was helpful\n
['Sorting', 'Python', 'Python3']