HDU-1425-sort
来源:互联网 发布:淘宝打折工具在哪里 编辑:程序博客网 时间:2024/06/04 19:13
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1425
sort
Problem Description
给你n个整数,请按从大到小的顺序输出其中前m大的数。
Input
每组测试数据有两行,第一行有两个数n,m(0<n,m<1000000),第二行包含n个各不相同,且都处于区间[-500000,500000]的整数。
Output
对每组测试数据按从大到小的顺序输出前m大的数。
Sample Input
5 33 -35 92 213 -644
Sample Output
213 92 3Hint请用VC/VC++提交
直接使用c++标准库中的sort函数
#include <iostream> #include <cstdio> #include <algorithm> using namespace std; bool cmp(int x,int y) { return x>y; } int a[1000000]; int main() { int n,m; while(~scanf("%d%d",&n,&m)) { for(int i=0;i<n;i++) scanf("%d",&a[i]); sort(a,a+n,cmp); printf("%d",a[0]); for(int i=1;i<m;i++) printf(" %d",a[i]); printf("\n"); } return 0; }
快速排序:
#include<cstdio>#include<iostream>using namespace std;void qsort(int a[],int left,int right){if(left>=right){return;}int i=left,j=right,key=a[left];while(i<j){while(i<j&&a[j]<=key){j--;}a[i]=a[j];while(i<j&&a[i]>=key){i++; } a[j]=a[i];}a[i]=key;qsort(a,left,i-1);qsort(a,i+1,right); }int main(){int n,m;int a[1000000];while(~scanf("%d%d",&n,&m)){if(n==0&&m==0)break;for(int i=0;i<n;i++){scanf("%d",&a[i]);}qsort(a,0,n-1);printf("%d",a[0]);for(int i=1;i<m;i++){printf(" %d",a[i]);}printf("\n");}return 0;}
阅读全文
0 0
- hdu 1425 sort
- HDU 1425 ( sort )
- HDU 1425 sort
- HDU 1425 sort
- hdu 1425 sort
- HDU 1425 sort
- HDU-1425sort
- HDU 1425 sort
- hdu 1425 sort (基数排序)
- hdu 1425 sort
- HDU 1425 sort 题解
- hdu 1425 sort
- hdu 1425 sort
- HDU 1425 Sort
- HDU 1425 sort
- hdu---1425 sort
- HDU 1425 sort
- HDU 1425--sort【水题】
- XYOJ 判断素数
- HDU 5118 GRE Words Once More!(搜索剪枝)
- R中如何利用余弦算法实现相似文章的推荐
- NOI2017退役记
- form表单中标签的使用
- HDU-1425-sort
- Mybatis映射文件处理特殊字符【转发】
- 跟踪用户行为
- XYOJ 多数求最大值
- 服务消费(Ribbon)
- 验证码无法显示,服务器端出现异常:Could not initialize class sun.awt.X11GraphicsEnvironment
- 配置xdebug远程调试-xdebug安装
- 连接池创建多连接方法的封装
- table中合并单元格