#include <bits/stdc++.h>
using namespace std;
int N;
int w=0;
string ss[500001];
int ans[500001]={};
int at[500001]={};
bool comp1(int lhs,int rhs){
return ss[lhs]<ss[rhs];
}
bool comp2(string lhs,string rhs){
return lhs<rhs;
}
int main() {
cin>>N;
for(int q=0;q<N;q=q+1){
cin>>ss[q];
at[q]=q;
}
sort(at,at+N,comp1);
sort(ss,ss+N,comp2);
for(int q=0;q<N;q=q+1){
w=0;
while(ss[q][w]==ss[q+1][w]&&w!=ss[q].length()){
w=w+1;
}
if(ans[at[q]]<w){
ans[at[q]]=w;
}
if(ans[at[q+1]]<w){
ans[at[q+1]]=w;
}
}
/*for(int q=0;q<N;q=q+1){
cout<<at[q]<<" "<<ss[q]<<"\n";
}*/
for(int q=0;q<N;q=q+1){
cout<<ans[q]<<"\n";
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmludCBOOwppbnQgdz0wOwpzdHJpbmcgc3NbNTAwMDAxXTsKaW50IGFuc1s1MDAwMDFdPXt9OwppbnQgYXRbNTAwMDAxXT17fTsKYm9vbCBjb21wMShpbnQgbGhzLGludCByaHMpewoJcmV0dXJuIHNzW2xoc108c3NbcmhzXTsKfQpib29sIGNvbXAyKHN0cmluZyBsaHMsc3RyaW5nIHJocyl7CglyZXR1cm4gbGhzPHJoczsKfQppbnQgbWFpbigpIHsKCWNpbj4+TjsKCWZvcihpbnQgcT0wO3E8TjtxPXErMSl7CgkJY2luPj5zc1txXTsKCQlhdFtxXT1xOwoJfQoJc29ydChhdCxhdCtOLGNvbXAxKTsKCXNvcnQoc3Msc3MrTixjb21wMik7Cglmb3IoaW50IHE9MDtxPE47cT1xKzEpewoJCXc9MDsKCQl3aGlsZShzc1txXVt3XT09c3NbcSsxXVt3XSYmdyE9c3NbcV0ubGVuZ3RoKCkpewoJCQl3PXcrMTsKCQl9CgkJaWYoYW5zW2F0W3FdXTx3KXsKCQkJYW5zW2F0W3FdXT13OwoJCX0KCQlpZihhbnNbYXRbcSsxXV08dyl7CgkJCWFuc1thdFtxKzFdXT13OwoJCX0KCX0KCS8qZm9yKGludCBxPTA7cTxOO3E9cSsxKXsKCQljb3V0PDxhdFtxXTw8IiAiPDxzc1txXTw8IlxuIjsKCX0qLwoJZm9yKGludCBxPTA7cTxOO3E9cSsxKXsKCQljb3V0PDxhbnNbcV08PCJcbiI7Cgl9CglyZXR1cm4gMDsKfQ==