#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int ch[100010][2],cnt[100010],sz;
int res=0;
void insert(char str[]){
int len=strlen(str),cur=0;
for(int i=0;i<len;i++){
int c=str[i]-'0';
if(!ch[cur][c]){
ch[cur][c]=sz++;
}
cur=ch[cur][c];
cnt[cur]++;
res=max(res,cnt[cur]*(i+1));
}
}
int main(){
int T,n;
char str[220];
scanf("%d",&T);
while(T--){
res=0,sz=1;
memset(cnt,0,sizeof(cnt));
memset(ch,0,sizeof(ch));
scanf("%d",&n);
for(int i=0;i<n;i++){
scanf("%s",str);
insert(str);
}
printf("%d\n",res);
}
}
uva 11488 字典树
最新推荐文章于 2017-09-20 08:54:30 发布