leetcode

Solution to some Leetcode problems written in C++
git clone git://git.dimitrijedobrota.com/leetcode.git
Log | Files | Refs | README | LICENSE

3212.cpp (684B)


0 class Solution { 1 public: 2 int numberOfSubmatrices(const vector<vector<char>> &grid) const { 3 const int n = size(grid), m = size(grid[0]); 4 vector<vector<int>> x(n + 1, vector(m + 1, 0)); 5 vector<vector<int>> y(n + 1, vector(m + 1, 0)); 6 int res = 0; 7 8 for (int i = 1; i <= n; i++) { 9 for (int j = 1; j <= m; j++) { 10 x[i][j] = x[i - 1][j] + x[i][j - 1] - x[i - 1][j - 1] + (grid[i - 1][j - 1] == 'X'); 11 y[i][j] = y[i - 1][j] + y[i][j - 1] - y[i - 1][j - 1] + (grid[i - 1][j - 1] == 'Y'); 12 if (x[i][j] > 0 && x[i][j] == y[i][j]) res++; 13 } 14 } 15 16 return res; 17 } 18 };