Skip to content

Commit c1a1c8e

Browse files
committed
leetcode-com-explore-challenge-card-june-leetcoding-challenge-541-week-3-june-15th-june-21st-3367.cpp
1 parent 99cd8a4 commit c1a1c8e

1 file changed

+21
-0
lines changed
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
class Solution {
2+
public:
3+
int calculateMinimumHP(vector<vector<int>>& dungeon) {
4+
int r=dungeon.size();
5+
int c=dungeon[0].size();
6+
vector<vector<int>>A(r,vector<int>(c));
7+
A[r-1][c-1] = dungeon[r-1][c-1] > 0 ? 1 : 1-dungeon[r-1][c-1];
8+
for(int i=r-2;i>=0;i--){
9+
A[i][c-1]=max(1,A[i+1][c-1] - dungeon[i][c-1] );
10+
}
11+
for(int i=c-2;i>=0;i--){
12+
A[r-1][i]=max(1,A[r-1][i+1] - dungeon[r-1][i] );
13+
}
14+
for(int i=r-2;i>=0;i--){
15+
for(int j=c-2;j>=0;j--){
16+
A[i][j]= max( min(A[i+1][j],A[i][j+1] ) - dungeon[i][j] , 1 ) ;
17+
}
18+
}
19+
return A[0][0];
20+
}
21+
};

0 commit comments

Comments
 (0)