Largest Submatrix With Rearrangements LeetCode solution in C++
1#pragma GCC optimize("O3")2class Solution {3public:4int largestSubmatrix(vector<vector<int>> &matrix) {5int m = matrix.size(), n = matrix[0].size();6int area = count(matrix[0].begin(), matrix[0].end(), 1);7for (int i = 1; i < m; i++) {8#pragma unroll9for (int j = 0; j < n; j++) {10if (matrix[i][j] != 0) matrix[i][j] += matrix[i - 1][j];11}12auto row = matrix[i];13sort(row.begin(), row.end());14#pragma unroll15for (int i = 0; i < n; i++) area = max(area, row[i] * (n - 1 - i + 1));16}17return area;18}19};20auto init = []() {21ios::sync_with_stdio(0);22cin.tie(0);23cout.tie(0);24return 'c';25}();