题意:已知n*n的矩形由1,0构成,每一次操作可以使得某一列的值全部反转(0变成1,1变成0)。问,最多能够使多少 行 全都是1.
思路:就是找一模一样的字符串有几个,因为一模一样的字符串操作后,肯定可以达到预想的 每行 都是1的情况;
数据分析:1 ≤ n ≤ 100
复杂度分析: O(n^2)
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
char str[150][150];
int mmax=INT_MIN;
int main(void)
{
int n;
cin >> n;
for(int i=1;i<=n;i++)
scanf("%s",str[i]+1);
for(int i=1;i<=n;i++)
{
int cnt=0;
for(int j=1;j<=n;j++)
{
if(strcmp(str[i]+1,str[j]+1)==0)
{
cnt++;
}
}
mmax=max(mmax,cnt);
}
cout << mmax << endl;
}