✅ 🔥 Python3 || ⚡easy solution
Code\n\nfrom typing import List\nimport collections\n\nclass Solution:\n    def maximumDetonation(self, bombs: List[List[int]]) -> int:\n        n2nxt = collect
# Code\n```\nfrom typing import List\nimport collections\n\nclass Solution:\n    def maximumDetonation(self, bombs: List[List[int]]) -> int:\n        n2nxt = collections.defaultdict(set)\n        lb = len(bombs)\n\n        for i in range(lb):  # i is the source\n            xi, yi, ri = bombs[i]\n\n            for j in range(lb):\n                if i == j:\n                    continue\n\n                xj, yj, rj = bombs[j]\n\n                if ri ** 2 >= (xi - xj) ** 2 + (yi - yj) ** 2:  # reachable from i\n                    n2nxt[i].add(j)\n\n        def dfs(n, seen):  # return None\n            if n in seen:\n                return\n            seen.add(n)\n            for nxt in n2nxt[n]:\n                dfs(nxt, seen)\n\n        ans = 0\n        for i in range(lb):\n            seen = set()\n            dfs(i, seen)\n            ans = max(ans, len(seen))\n        return ans\n\n```
['Python3']