java.lang.Object
g2101_2200.s2101_detonate_the_maximum_bombs.Solution

public class Solution extends Object
2101 - Detonate the Maximum Bombs.<p>Medium</p> <p>You are given a list of bombs. The <strong>range</strong> of a bomb is defined as the area where its effect can be felt. This area is in the shape of a <strong>circle</strong> with the center as the location of the bomb.</p> <p>The bombs are represented by a <strong>0-indexed</strong> 2D integer array <code>bombs</code> where <code>bombs[i] = [x<sub>i</sub>, y<sub>i</sub>, r<sub>i</sub>]</code>. <code>x<sub>i</sub></code> and <code>y<sub>i</sub></code> denote the X-coordinate and Y-coordinate of the location of the <code>i<sup>th</sup></code> bomb, whereas <code>r<sub>i</sub></code> denotes the <strong>radius</strong> of its range.</p> <p>You may choose to detonate a <strong>single</strong> bomb. When a bomb is detonated, it will detonate <strong>all bombs</strong> that lie in its range. These bombs will further detonate the bombs that lie in their ranges.</p> <p>Given the list of <code>bombs</code>, return <em>the <strong>maximum</strong> number of bombs that can be detonated if you are allowed to detonate <strong>only one</strong> bomb</em>.</p> <p><strong>Example 1:</strong></p> <p><img src="https://assets.leetcode.com/uploads/2021/11/06/desmos-eg-3.png" alt="" /></p> <p><strong>Input:</strong> bombs = [[2,1,3],[6,1,4]]</p> <p><strong>Output:</strong> 2</p> <p><strong>Explanation:</strong></p> <p>The above figure shows the positions and ranges of the 2 bombs.</p> <p>If we detonate the left bomb, the right bomb will not be affected.</p> <p>But if we detonate the right bomb, both bombs will be detonated.</p> <p>So the maximum bombs that can be detonated is max(1, 2) = 2.</p> <p><strong>Example 2:</strong></p> <p><img src="https://assets.leetcode.com/uploads/2021/11/06/desmos-eg-2.png" alt="" /></p> <p><strong>Input:</strong> bombs = [[1,1,5],[10,10,5]]</p> <p><strong>Output:</strong> 1</p> <p><strong>Explanation:</strong> Detonating either bomb will not detonate the other bomb, so the maximum number of bombs that can be detonated is 1.</p> <p><strong>Example 3:</strong></p> <p><img src="https://assets.leetcode.com/uploads/2021/11/07/desmos-eg1.png" alt="" /></p> <p><strong>Input:</strong> bombs = [[1,2,3],[2,3,1],[3,4,2],[4,5,3],[5,6,4]]</p> <p><strong>Output:</strong> 5</p> <p><strong>Explanation:</strong> The best bomb to detonate is bomb 0 because:</p> <ul> <li> <p>Bomb 0 detonates bombs 1 and 2. The red circle denotes the range of bomb 0.</p> </li> <li> <p>Bomb 2 detonates bomb 3. The blue circle denotes the range of bomb 2.</p> </li> <li> <p>Bomb 3 detonates bomb 4. The green circle denotes the range of bomb 3.</p> </li> </ul> <p>Thus all 5 bombs are detonated.</p> <p><strong>Constraints:</strong></p> <ul> <li><code>1 <= bombs.length <= 100</code></li> <li><code>bombs[i].length == 3</code></li> <li><code>1 <= x<sub>i</sub>, y<sub>i</sub>, r<sub>i</sub> <= 10<sup>5</sup></code></li> </ul>
  • Constructor Details

    • Solution

      public Solution()
  • Method Details

    • maximumDetonation

      public int maximumDetonation(int[][] bombs)