Given an string representing a 2D array of integers that contains the locations of the two skyscrapers, find the shortest possible path that connects the two skyscrapers and return the length of that path. A skyscraper is defined to be a 4-directionally connected group (i.e. North-South-East-West, no diagonals), and can consist of multiple "parts" such that the initial size of the skyscraper is not one single cell. 1's represent a cell that is part of the skyscraper, and 0's represent cells that are empty air. You will join the path to the other skyscraper by adding planks to spots containing 0's where each cell represents one unit of distance. You can only add planks to spots connected to either a skyscraper or another 2x4 (i.e. you cannot "jump" over a gap), and you can only do so 4-directionally. Return the smallest number of planks needed to make the crossing. Case 1: Input: {[1,0,0,0],[0,0,0,0],[0,1,1,0],[0,0,1,1]} Output: 2 Case 2: Input: {[1,1,0,0,0],[1,0,0,0,0],[0,0,0,0,1],[0,0,1,1,1],[0,1,1,0,0]} Output: 3 Case 3: Input: {[0,0,0,0,0,0,0,0,0,0],[0,0,1,1,0,0,1,0,1,1],[0,0,0,1,1,1,1,0,1,0], [0,0,1,1,0,1,1,1,1,0],[0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0], [0,0,0,0,0,0,0,0,0,0],[1,0,0,0,0,0,0,0,0,0],[1,1,0,0,1,1,0,0,1,0], [1,1,1,1,1,1,1,1,1,0]} Output: 4 Assumptions: There are only 2 skyscrapers, and the distance between them will always be at least 1. You have an unlimited amount of planks and you are a super intelligence Computer Scientist, so you don't have to only utilize the shortest distance you just need to FIND the shortest distance. In
Please use a different code instead of a Chegg code Utilize the code with
Given an string representing a 2D array of integers that contains the locations of the two skyscrapers, find the shortest possible path that connects the two skyscrapers and return the length of that path. A skyscraper is defined to be a 4-directionally connected group (i.e. North-South-East-West, no diagonals), and can consist of multiple "parts" such that the initial size of the skyscraper is not one single cell. 1's represent a cell that is part of the skyscraper, and 0's represent cells that are empty air. You will join the path to the other skyscraper by adding planks to spots containing 0's where each cell represents one unit of distance. You can only add planks to spots connected to either a skyscraper or another 2x4 (i.e. you cannot "jump" over a gap), and you can only do so 4-directionally. Return the smallest number of planks needed to make the crossing. Case 1: Input: {[1,0,0,0],[0,0,0,0],[0,1,1,0],[0,0,1,1]} Output: 2 Case 2: Input: {[1,1,0,0,0],[1,0,0,0,0],[0,0,0,0,1],[0,0,1,1,1],[0,1,1,0,0]} Output: 3 Case 3: Input: {[0,0,0,0,0,0,0,0,0,0],[0,0,1,1,0,0,1,0,1,1],[0,0,0,1,1,1,1,0,1,0], [0,0,1,1,0,1,1,1,1,0],[0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0], [0,0,0,0,0,0,0,0,0,0],[1,0,0,0,0,0,0,0,0,0],[1,1,0,0,1,1,0,0,1,0], [1,1,1,1,1,1,1,1,1,0]} Output: 4 Assumptions: There are only 2 skyscrapers, and the distance between them will always be at least 1. You have an unlimited amount of planks and you are a super intelligence Computer Scientist, so you don't have to only utilize the shortest distance you just need to FIND the shortest distance. In other words, if you filled the entire 2D array with planks and used that to find the shortest distance, that is a perfectly valid solution. You do not have to keep the values in an array (though I might recommend it), you can utilize vectors/Linked Links/BSTs, ect. The maximum size of the grid is 100x100, and all matrices are of size m x m, where m is some size 2 to 100.
Trending now
This is a popular solution!
Step by step
Solved in 2 steps with 3 images