Openjudge NOI题库 ch0111/08 不重复地输出数

这题水得和二分点关系没有,这篇文纯粹凑数

总时间限制:
1000ms
内存限制:
65536kB
描述

输入n个数,从小到大将它们输出,重复的数只输出一次。保证不同的数不超过500个。

输入
第一行是一个整数n。1 <= n <= 100000。
之后n行,每行一个整数。整数大小在int范围内。
输出
一行,从小到大不重复地输出这些数,相邻两个数之间用单个空格隔开。
样例输入
5
2 4 4 5 1
样例输出
1 2 4 5
 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #define maxn 100010
 4 int cmp(const void *a,const void *b)
 5 {
 6     return *(int *)a-*(int *)b;
 7 }
 8 int main()
 9 {
10     int n;
11     int i;
12     int a[maxn];
13     scanf("%d",&n);
14     for(i=0;i<n;i++)
15         scanf("%d",&a[i]);
16     qsort(a,n,sizeof(int),cmp);
17     printf("%d ",a[0]);
18     for(i=1;i<n;i++)
19     {
20         if(a[i]==a[i-1]) continue;
21         printf("%d ",a[i]);
22     }
23     return 0;
24 }
原文地址:https://www.cnblogs.com/KakagouLT/p/5022195.html