HDOJ--1425 SORT (刚开始学ACM,用的是最简单的方法)
2015-07-22 21:46
309 查看
题目描述:
Problem Description
给你n个整数,请按从大到小的顺序输出其中前m大的数。
Input
每组测试数据有两行,第一行有两个数n,m(0<n,m<1000000),第二行包含n个各不相同,且都处于区间[-500000,500000]的整数。
Output
对每组测试数据按从大到小的顺序输出前m大的数。
Sample Input
Sample Output
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 感想:这道题挺烦人的。很多细节要注意。(1) 数组应定义在主函数之前,因为数组要开的很大,放在主函数里会出现错误。 (2) 只能适用QSORT函数或者SORT函数去做,用冒泡排序法会超时的。 (3) 然后注意下输出的格式问题就好咯。我的代码: #include<stdio.h> #include<stdlib.h> int a[1000005]; int cmp(const void*a,const void*b) { return*(int *)b-*(int *)a; } int main() { int n,m,i,j,t; while(scanf("%d%d",&n,&m)!=EOF) { for(i=0;i<n;i++) scanf("%d",&a[i]); qsort(a,n,sizeof(a[0]),cmp); printf("%d",a[0]); for(i=1;i<m;i++) printf(" %d",a[i]); printf("\n"); } return 0; }
相关文章推荐
- 使用github和hexo搭建静态博客
- 排序算法总结
- js 客户端如何判断浏览器是否暗转Flash
- 前端新手——适配不同手机端页面的方案,动态查询dpr设置根元素font-size
- [教程技巧] iOS开发学习路线图
- Intellij Idea编译项目下的.java文件时的编码问题
- hdoj-2273-The buses
- 杭电1129 Do the Untwist
- poj 3723 Conscription (最小生成树)
- 算法之二分查找(1)
- 如何将一个字符串倒序输出
- XML解析
- 51-android.rules详解
- iOS本地国际化处理自己封装好的宏
- ios结构体
- iOS开发入门教程 iPhone开发相关学习资料
- 数据库设计(二)——数据类型
- 说说nio----1
- 2015 多校赛 1002 (hdu 5289)
- 说说nio----1