Skip to content

Commit d08ba67

Browse files
authored
Add files via upload
1 parent 115af8f commit d08ba67

File tree

1 file changed

+42
-0
lines changed

1 file changed

+42
-0
lines changed

Path with Maximum Gold.cpp

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
2+
3+
class Solution {
4+
public:
5+
6+
int help(vector<vector<int>>& grid, int i, int j)
7+
{
8+
if(i<0 || j<0 || i>=grid.size() || j>=grid[0].size() || grid[i][j]==0)
9+
return 0;
10+
11+
int temp = grid[i][j];
12+
13+
grid[i][j] = 0;
14+
15+
int op1 = help(grid, i+1, j);
16+
int op2 = help(grid, i-1, j);
17+
int op3 = help(grid, i, j-1);
18+
int op4 = help(grid, i, j+1);
19+
20+
grid[i][j] = temp;
21+
return ( grid[i][j] + max({op1, op2, op3, op4}) );
22+
}
23+
int getMaximumGold(vector<vector<int>>& grid)
24+
{
25+
int call, ans = 0;
26+
for(int i=0;i<grid.size();i++)
27+
{
28+
for(int j=0;j<grid[0].size();j++)
29+
{
30+
if(grid[i][j] != 0)
31+
{
32+
call = help(grid,i,j);
33+
ans = max(call ,ans);
34+
}
35+
}
36+
}
37+
38+
return ans;
39+
}
40+
41+
42+
};

0 commit comments

Comments
 (0)