#include #include #include using namespace std; struct node { char name[300]; int cnt; int id; int len; } s[1005]; char ss[300]; struct kode { char name[30]; int len; } word[15]; struct qode { char name[30]; int len; } word2[15]; int cmp(node x,node y) { if(x.cnt==y.cnt) return x.idy.cnt; } int main() { int n,i,j,k,x,y,z,m,len; int ll,l_word,flag; int ll2,l_word2; while(~scanf("%d",&n),n) { for(i = 0; i='A' && ss[j]<='Z') ss[j]+=32; } memset(word,'\0',sizeof(word)); for(j = 0; j='a' && ss[j]<='z') { word[l_word].name[ll++] = ss[j]; } else if(j>0 && ss[j] == ' ' && ss[j-1]>='a' && ss[j-1]<='z') { word[l_word].name[ll] = '\0'; word[l_word].len = ll; l_word++; ll = 0; } } for(j = 0; j='a' && s[j].name[k]<='z') { word2[l_word2].name[ll2++] = s[j].name[k]; } else if(s[j].name[k]>='A' && s[j].name[k]<='Z') { word2[l_word2].name[ll2++] = s[j].name[k]+32; } else if(s[j].name[k] == ' ' && s[j].name[k-1]>='a' && s[j].name[k-1]<='z') { word2[l_word2].name[ll2] = '\0'; word2[l_word2].len = ll2; l_word2++; ll2 = 0; } else if(s[j].name[k] == ' ' && s[j].name[k-1]>='A' && s[j].name[k-1]<='Z') { word2[l_word2].name[ll2] = '\0'; word2[l_word2].len = ll2; l_word2++; ll2 = 0; } } y = 0; x = 0; flag = 0; while(x