sort

http://acm.hdu.edu.cn/diy/contest_showproblem.php?pid=1001&cid=22619



Problem Description

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

Input

每组测试数据有两行,第一行有两个数n,m(0<n,m<1000000),第二行包含n个各不相同,且都处于区间[-500000,500000]的整数。

Output

对每组测试数据按从大到小的顺序输出前m大的数。

Sample Input

5 3
3 -35 92 213 -644

Sample Output

213 92 3

Hint

Hint
请用VC/VC++提交

Author

LL

Source

ACM暑期集训队练习赛(三)



#include <stdio.h>
 #include <cstdio>
    #include <algorithm>
    using namespace std;
 bool cmp(int x,int y)
    {
    return x>y;
    }




    
    int a[500000];
    int main()
    {
    int n,m;
    while(scanf("%d%d",&n,&m)!=EOF)
    {int i;
    for(i = 0;i<n;i++)
    scanf("%d",&a[i]);
    sort(a,a+n,cmp);
    printf("%d",a[0]);
    for(i=1;i<m;i++)
    printf(" %d",a[i]);
    printf(" ");
    }
    return 0;
    }



原文地址:https://www.cnblogs.com/lengxia/p/4387888.html