HDOJ 1425 sort

// HDOJ 1425 sort
// @author: bos
// @date: 2012.2.6
//用哈希表解决
#include<stdio.h>
#include<memory.h>
int num[1000001]= {0};
int main()
{
int n, m;
int input;
while(scanf("%d%d", &n, &m)!= EOF)
{
memset(num, 0, sizeof(num));
while(n--)
{
scanf("%d", &input);
num[input+ 500000]= 1;
}
int i;
int count= 0;
for(i= 1000000; ; i--)
{
if(num[i]== 1)
{
count++;
printf("%d", i- 500000);
if(count< m) printf(" ");
}
if(count== m) break; //注意这儿不能用else if,因为每次输出都要判断是否到了m次
}
printf("\n");

}
return 0;
}
原文地址:https://www.cnblogs.com/ibosong/p/2340331.html