class Solution {
    int dp[210][210] = {0};
public:

    int maxValue(vector<vector<int> >& grid) 
    {
       int n = grid.size();
       int m = grid[0].size();
       for(int i=1;i<=n;i++)
       {
        for(int j=1;j<=m;j++)
        {
            dp[i][j] = max(dp[i-1][j],dp[i][j-1]) + grid[i-1][j-1];
        }
       }
       return dp[n][m];
    }
};