@ninijia 在 Leetcode每日一题练习 ------ 1072. 按列翻转得到最大值等行数 中发帖
从Leetcode 每日一题练习继续讨论:
1072. 按列翻转得到最大值等行数
1072. Flip Columns For Maximum Number of Equal Rows
题解
本题先思考简单例子,对于两行01串,在什么情况下通过多次翻转同一个位置上的数字最终可以使得两行行内数字完全相同,如00,10显然无论怎么翻转都只可能有一行数字是完全相同的,另一行则不可能相同,再考虑10,01,只需翻转任意一列,两行数字都会相同。由此可以猜测对于任意两行数字,若这两行数字每一位上的数都不相同,则这两行数字最终可以通过翻转实现两行数字行内完全相同,注意数字只能取0,1两种,因此若两行数字满足每一位都不相同,要想三行数字满足行内相同,第三行数字必定和这两行数字中的某一行完全相同。
则若能通过翻转使得任意两行的行内数字完全相同,这两行要么相同,要么相反。我们只需统计相同行和对应的相反...