Class Solution

java.lang.Object
g0501_0600.s0554_brick_wall.Solution

public class Solution extends Object
554 - Brick Wall.<p>Medium</p> <p>There is a rectangular brick wall in front of you with <code>n</code> rows of bricks. The <code>i<sup>th</sup></code> row has some number of bricks each of the same height (i.e., one unit) but they can be of different widths. The total width of each row is the same.</p> <p>Draw a vertical line from the top to the bottom and cross the least bricks. If your line goes through the edge of a brick, then the brick is not considered as crossed. You cannot draw a line just along one of the two vertical edges of the wall, in which case the line will obviously cross no bricks.</p> <p>Given the 2D array <code>wall</code> that contains the information about the wall, return <em>the minimum number of crossed bricks after drawing such a vertical line</em>.</p> <p><strong>Example 1:</strong></p> <p><img src="https://assets.leetcode.com/uploads/2021/04/24/cutwall-grid.jpg" alt="" /></p> <p><strong>Input:</strong> wall = [[1,2,2,1],[3,1,2],[1,3,2],[2,4],[3,1,2],[1,3,1,1]]</p> <p><strong>Output:</strong> 2</p> <p><strong>Example 2:</strong></p> <p><strong>Input:</strong> wall = [[1],[1],[1]]</p> <p><strong>Output:</strong> 3</p> <p><strong>Constraints:</strong></p> <ul> <li><code>n == wall.length</code></li> <li><code>1 <= n <= 10<sup>4</sup></code></li> <li><code>1 <= wall[i].length <= 10<sup>4</sup></code></li> <li><code>1 <= sum(wall[i].length) <= 2 * 10<sup>4</sup></code></li> <li><code>sum(wall[i])</code> is the same for each row <code>i</code>.</li> <li><code>1 <= wall[i][j] <= 2<sup>31</sup> - 1</code></li> </ul>
  • Constructor Details

    • Solution

      public Solution()
  • Method Details