Imagine that for a grid of ‘1’s and ‘0’s you have the option to first flip a row and then flip a column (when flipped, a '0' turns into '1' and vice versa.). Given an array of strings to represent such a grid, return the maximum number of '1's we can get after making two such flips.
Example:
["101",
"010",
"101"]
Returns: 9 (Flipping row 1 and col 2 will give a grid of 9 1s, (row and col index is 0 based))
Exampel 2:
["0101001",
"1101011"]
Returns: 9 (Flipping row 0, any column in this case)