Flip Columns For Maximum Number of Equal Rows LeetCode solution in Python
1from typing import List2from collections import Counter345class Solution:6def maxEqualRowsAfterFlips(self, matrix: List[List[int]]) -> int:7counter = Counter()8max_val = 2 ** len(matrix[0]) - 19for row in matrix:10v = self.calculate_binary(row)11counter[v] += 112counter[max_val - v] += 113# print(f'counter: {counter}')1415return counter.most_common(1)[0][1]1617def calculate_binary(self, row: List[int]) -> int:18val = 019for r in row:20val = val * 2 + r21return val