Simple C++ Solution
\n\n    int maxArea(int h, int w, vector<int>& horizontalCuts, vector<int>& verticalCuts) {\n        \n        sort( horizontalCuts.begin() , horizontalCuts.end
```\n\n    int maxArea(int h, int w, vector<int>& horizontalCuts, vector<int>& verticalCuts) {\n        \n        sort( horizontalCuts.begin() , horizontalCuts.end() );\n        sort( verticalCuts.begin(),  verticalCuts.end());\n        \n        horizontalCuts.push_back(h);\n        verticalCuts.push_back(w);\n        \n        \n        long long int max1 = horizontalCuts[0];\n        long long int max2 = verticalCuts[0];\n        \n        for( int i = 1 ; i < horizontalCuts.size() ; i++ ){\n            \n            if( horizontalCuts[i] - horizontalCuts[i-1] > max1)\n                max1 = horizontalCuts[i] - horizontalCuts[i-1];\n           \n        }\n        \n        \n        for( int i = 1 ; i < verticalCuts.size() ; i++ ){\n            \n            if( verticalCuts[i] - verticalCuts[i-1] > max2)\n                max2 = verticalCuts[i] - verticalCuts[i-1];\n           \n        }    \n      \n        return (max1%(1000000000 + 7)* max2% (1000000000 + 7))% (1000000000+7);\n}  \n\n```
[]