1 #include<stdio.h> 2 int a[100]; 3 void q_sort(int*,int,int); 4 int main() 5 { 6 int t,n; 7 scanf("%d",&t); 8 while(t--) 9 { 10 scanf("%d",&n); 11 for(int i=0; i<n; ++i) 12 scanf("%d",a+i); 13 q_sort(a,0,n-1); 14 int ant=0,ans=1; 15 for(int i=1; i<n; ++i) 16 if(a[i]==a[ant]) 17 a[i]=0; 18 else 19 { 20 ant=i; 21 ++ans; 22 } 23 printf("%d\n%d",ans,a[0]); 24 for(int i=1; i<n; ++i) 25 if(a[i]) 26 printf(" %d",a[i]); 27 puts(""); 28 } 29 } 30 31 void q_sort(int a[],int x,int y) 32 { 33 if(x>y) 34 return ; 35 int i=x,j=y,t=a[x]; 36 while(i!=j) 37 { 38 while(i<j && a[j]>=t) --j; 39 while(i<j && a[i]<=t) ++i; 40 if(i<j) 41 { 42 int temp=a[i]; 43 a[i]=a[j]; 44 a[j]=temp; 45 } 46 } 47 a[x]=a[i]; 48 a[i]=t; 49 q_sort(a,x,i-1); 50 q_sort(a,i+1,y); 51 }
时间: 2024-10-29 19:08:13