HDU1425—sort

给你n个整数,请按从大到小的顺序输出其中前m大的数。 

Input每组测试数据有两行,第一行有两个数n,m(0 Output对每组测试数据按从大到小的顺序输出前m大的数。 
Sample Input

5 3
3 -35 92 213 -644

Sample Output

213 92 3


        
  这个题目我开始用for循环去做,但是后来总报错wrongtime,向别人请教给了这种方法。用空间去换时间,我看了好半天才看懂这个代码,觉得对我这种初学者来说很漂亮。
#include 
#define MAX_LEN 1000001
#define HALF_MAX 500000
int arr[MAX_LEN] = { 0 };
int main()
{
int i;
int n, m, temp, count = 0, key;
while (~scanf("%d%d", &n, &m)) {
for ( i = 0; i

 

你可能感兴趣的:(HDU1425—sort)