南阳283
1 #include<stdio.h> 2 char s[20][30]; 3 int ans[20]; 4 int n,top=0,mins=30; 5 6 void _sort(int,int,int); 7 int lenth(char*); 8 9 int main() 10 { 11 int i,Case=1; 12 while(~scanf("%d",&n) && n) 13 { 14 mins=30; 15 top=0; 16 for(i=0; i<n; ++i) 17 { 18 scanf("%s",s[i]); 19 int len=lenth(s[i]); 20 if(len < mins) 21 mins=len; 22 } 23 printf("SET %d\n",Case++); 24 _sort(0,n,mins); 25 for(i=0; i<n; i+=2) 26 puts(s[ans[i]]); 27 if(n%2) 28 i=n-2; 29 else 30 i=n-1; 31 for( ; i>0; i-=2) 32 puts(s[ans[i]]); 33 } 34 } 35 36 void _sort(int x,int y,int len) 37 { 38 if(top == n) 39 return ; 40 for(int i=x; i<y; ++i) 41 if(lenth(s[i]) == len) 42 ans[top++]=i; 43 _sort(x,y,len+1); 44 } 45 int lenth(char s[]) 46 { 47 int i=0; 48 while(s[i]!='\0') 49 ++i; 50 return i; 51 } 52