网址:http://codeforces.com/contest/1088/problem/B
水题。给所有数排个序以后,发现可以O(n)时间做完所有减法操作。注意到对于相同的值减一次就都变成0了,所以unique了一下。然后就没了。
#include <cstdio>
#include <algorithm>
using namespace std;
const int N=100005;
int n,k,a[N];
int main(void) {
scanf("%d%d",&n,&k);
for (int i=0;i<n;++i)
scanf("%d",a+i);
sort(a,a+n);
int n2=unique(a,a+n)-a;
int sum=0;
for (int i=0;i<k;++i)
if (i>=n2)
printf("0\n");
else {
printf("%d\n",a[i]-sum);
sum+=a[i]-sum;
}
return 0;
}