sort
2015-07-22 17:23
197 查看
sort
Time Limit : 6000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other)Total Submission(s) : 194 Accepted Submission(s) : 32
Font: Times New Roman | Verdana | Georgia
Font Size: ← →
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 /*注意格式问题*/
#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>
int Partition(int array[], int left, int right)
{
int i,j;
int temp;
j=left-1;
for (i=left;i<=right;i++)
{
if (array[i]<= array[right])
{
j++;
temp=array[j];
array[j]=array[i];
array[i]=temp;
}
}
return j;
}
void QuikSort(int array[], int left, int right)
{
int pivot;
if (left<right)
{
pivot=Partition(array,left,right);
QuikSort(array,left,pivot-1);
QuikSort(array,pivot+1,right);
}
}
int main()
{
int n,m,i;
while(scanf("%d%d",&n,&m)!=EOF)
{
int *a=(int *)malloc(sizeof(int)*n);
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
QuikSort(a,0,n-1);
for(i=n-1;i>n-m-1;i--)
{
printf("%d",a[i]);
if(i!=(n-m))
printf(" ");
}
printf("\n");
free(a);
}
return 0;
}
相关文章推荐
- intent.putExtra()方法参数详解
- Android Studio Intent使用(显式、隐式) 第一行代码
- 一些文章
- html5+FormData 实现ajax文件上传
- zoj 2193 Window Pains
- 【asp.net】常用内置对象(session,Application,ViewSate)
- AFNetworking如何post一个json数据到服务器
- https解析
- javascript异步代码的回调地狱以及JQuery.deferred提供的promise解决方案
- yum提示another app is currently holding the yum lock;waiting for it to exit
- HDU 1040 As Easy As A+B [补]
- [NOI2004][BZOJ1503] 郁闷的出纳员
- zoj 2193 Window Pains
- 一切皆软件,一切皆API
- linux下实现用户态烧写内核
- javascript控制层显示或隐藏的方法
- HDU EXCEL排序
- 几种jar转exe方法的比较
- 头文件互相包含与error C2146: 语法错误 : 缺少“;”的问题
- 工作线程中UpdateData