WA了好多个点,24pts
#include<bits/stdc++.h>
using namespace std;
int n,m,x;
int ans;
map<vector<int>,int>f;
int main(){
cin>>n>>m;
vector<int>a(m+7);
f[a]=0;
for(int i=1;i<=m;i++){
a[i]=0;
}
for(int i=1;i<=n;i++){
cin>>x;
bool flag=1;
for(int j=1;j<=m;j++){
if(x&(1<<(i-1))){
a[j]++;
}
if(a[j]<=0){
flag=0;
}
}
if(flag){
for(int j=1;j<=m;j++){
a[j]--;
}
}
if(f.count(a)){
ans=(i-f[a]>ans)?(i-f[a]):ans;
}
else{
f[a]=i;
}
}
cout<<ans;
return 0;
}