zoukankan      html  css  js  c++  java
  • hd acm1425

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

    先看代码:

    #include<stdio.h>
    #include<string.h>
    #define MAX 1100000
    int a[MAX];

    int main()
    {
      int n,m,i,t,k;
      while(scanf("%d%d",&n,&m)!=EOF)
      {
        while(n--)
        {
          scanf("%d",&t);
          a[t+500000]=1;  /*这个处理是边输边排,输入一个较小的数a,a便被分到了数组的较前方;输入一个较大的数b,b便被分到了数组的较后方。这样就间接实现了对输入的数据从大到小的排列,然后再按照要求输出。很6*/

        }
        t=MAX;
        for(i=0;i<m;i++)
        {
        while(1)
        {
          if(a[t]==1)
          {
            k=t-500000;
            a[t]=0;
            break;
          }
          else
            t--;
        }
       if(i==0)
         printf("%d",k);
       else
         printf(" %d",k);
         }
         printf(" ");
      }
      return 0;
    }

  • 相关阅读:
    問題集リンク(DEV I)
    認定Platformデベロッパー 試験範囲
    React 学习资源
    IIS
    小学校
    リストに項番をつける
    七、JavaScript函数
    六、JavaScript数组
    五、JavaScript流程控制
    四、JavaScript操作符
  • 原文地址:https://www.cnblogs.com/clljs/p/7447531.html
Copyright © 2011-2022 走看看