题目1431:Sort
#include <iostream>
#include <cstdio>
#define OFFSET 500000//偏移量 用于补偿负值
using namespace std;
int hashtmp[1000001]; //记录是否出现
int main()
{
int n,m;
while(scanf("%d%d",&n,&m)!=EOF){
//初始化
for(int i=-500000;i<=500000;i++){
hashtmp[i+OFFSET]=0;
}
//读取数据
for(int i=0;i<n;i++){
int x;
cin>>x;
hashtmp[x+OFFSET]=1;
}
for(int i=500000;i>=-500000&&m;i--){
if(hashtmp[i+OFFSET]==1){
if(m!=1){
cout<<i<<" ";
}else{
cout<<i<<endl;
}
m--;
}
}
}
return 0;
}
注意:若使用sort函数排序的话会超时