Solved! Leetcode 1219. Path with Maximum Gold

source: https://leetcode.com/problems/path-with-maximum-gold/description/

Description: Path with Maximum Gold

In a gold mine grid of size m x n, each cell in this mine has an integer representing the amount of gold in that cell, 0 if it is empty.

Return the maximum amount of gold you can collect under the conditions:

  • Every time you are located in a cell you will collect all the gold in that cell.
  • From your position, you can walk one step to the left, right, up, or down.
  • You can’t visit the same cell more than once.
  • Never visit a cell with 0 gold.
  • You can start and stop collecting gold from any position in the grid that has some gold.

Example 1

Example 2

Constraints

  • m == grid.length
  • n == grid[i].length
  • 1 <= m, n <= 15
  • 0 <= grid[i][j] <= 100
  • There are at most 25 cells containing gold.

Solution

Time Complexity

M*N*3^G, We are only running recursion in 3 direction (except for the starting call), as previous cell is already visited and cannot be visited again, where G indicate gold cells

Space Complexity

O(G), G – Total golden cells in the grid.

As the DFS call can only go so far as to visit all connected Golden cells, it has O(G)O(G)O(G) space complexity.

Rate this post

Leave a Reply