zoukankan      html  css  js  c++  java
  • sort

                                                                                                            sort 

    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++提交
            
     

    #include<stdio.h>
    int s[1000000];
    int adjust(int s[], int l, int r) {
        int i = l, j = r;
        int x = s[l];
        while(i < j){
            while(i < j && s[j] >= x ) j--;
            if(i < j) {
                s[i] = s[j];
                i++;
            }
            while(i < j && s[i] < x ) i++;
            if(i < j){
                s[j] = s[i];
                j--;
            }
        }
        s[i] = x;
        return i;
    }
    void qsort(int s[], int l, int r) {
        if(l < r){
            int i = adjust(s, l, r);
            qsort(s, l, i-1);
            qsort(s, i+1, r);
        }
    }
    int main(){
        int n, m;
        while(~scanf("%d%d", &n, &m)){
            for(int i=0; i<n; i++)  scanf("%d", &s[i]);
            qsort(s, 0, n-1);
            for(int i=n-1; i>=n-m; i--)
                i==n-1? printf("%d", s[i]) : printf(" %d", s[i]);
            printf("
    ");
        }
        return 0;
    }
    


  • 相关阅读:
    JPA01
    mybatis入门
    PHP 循环- While循环
    PHP超级全局变量
    PHP 数组排序
    PHP数组
    PHP Switch语句
    PHP IF...Else语句
    PHP运算符
    PHP字符串变量
  • 原文地址:https://www.cnblogs.com/Genesis2018/p/9079896.html
Copyright © 2011-2022 走看看