寻找大富翁

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 6716    Accepted Submission(s): 2492

Problem Description
浙江桐乡乌镇共有n个人,请找出该镇上的前m个大富翁.
Input
输入包含多组测试用例.
每个用例首先包含2个整数n(0<n<=100000)和m(0<m<=10),其中: n为镇上的人数,m为需要找出的大富翁数, 接下来一行输入镇上n个人的财富值.
n和m同时为0时表示输入结束.
Output
请输出乌镇前m个大富翁的财产数,财产多的排前面,如果大富翁不足m个,则全部输出,每组输出占一行.
Sample Input
3 1
2 5 -1
5 3
1 2 3 4 5
0 0

Sample Output
5
5 4 3

Source
浙大计算机研究生复试上机考试-2009年
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3785
分析:这题很坑呐!用C++输入输出会超时,此题应选用scanf输入!开始尝试着倒序输出,超时!虽然要求前m的大富翁,但负数就不算是大富翁了,这时就应该全部输出,这个问题没有注意到,继续WA!此题还要注意空格的输入输出,不然肯定又PE了!
以下给出AC代码:
 1 #include <bits/stdc++.h>
 2 using namespace std;
 3 int main()
 4 {
 5     int a[100005];
 6     int n,m,i,j,k;
 7     while(scanf("%d%d",&n,&m)&&m&&n)
 8     {
 9         k=0;
10         for(i=0;i<n;i++)
11             scanf("%d",&a[i]);
12         sort(a,a+n);
13         if(m>n)
14         {
15             for(i=n-1;i>=0;i--)
16             {
17                 printf("%d",a[n]);
18                 if(i!=0)
19                     printf(" ");
20             }
21             printf("\n");
22             continue;
23         }
24         for(i=n-1;i>=n-m;i--)
25         {
26             if(a[i]<0)
27             {
28                 j=i;
29                 k=1;
30                 break;
31             }
32             printf("%d",a[i]);
33             if(i!=n-m)
34                 printf(" ");
35         }
36         if(k!=0)
37         {
38             for(i=j;i>=0;i++)
39             {
40                 printf("%d",a[i]);
41                 if(i!=0)
42                     printf(" ");
43             }
44         }
45             printf("\n");
46     }
47     return 0;
48 }

转载于:https://www.cnblogs.com/ECJTUACM-873284962/p/6392776.html

HDU 3785 寻找大富翁相关推荐

  1. HDU 3785 寻找大富翁

    寻找大富翁 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Subm ...

  2. HDU 3785 寻找大富翁(sort排序或优先队列)

    题干: 浙江桐乡乌镇共有n个人,请找出该镇上的前m个大富翁. Input输入包含多组测试用例.  每个用例首先包含2个整数n(0<n<=100000)和m(0<m<=10),其 ...

  3. HDU - 3785 寻找大富翁

    Description 浙江桐乡乌镇共有n个人,请找出该镇上的前m个大富翁. Input 输入包含多组测试用例. 每个用例首先包含2个整数n(0<n<=100000)和m(0<m&l ...

  4. HDOJ-3785 寻找大富翁(优先队列)

    寻找大富翁 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Subm ...

  5. 7-3 寻找大富翁 (25 分)

    7-3 寻找大富翁 (25 分) 胡润研究院的调查显示,截至2017年底,中国个人资产超过1亿元的高净值人群达15万人.假设给出N个人的个人资产值,请快速找出资产排前M位的大富翁.输入格式: 输入首先 ...

  6. R7-7 寻找大富翁 (25 分)

    R7-7 寻找大富翁 (25 分) 胡润研究院的调查显示,截至2017年底,中国个人资产超过1亿元的高净值人群达15万人.假设给出N个人的个人资产值,请快速找出资产排前M位的大富翁. 输入格式: 输入 ...

  7. 7-227 寻找大富翁 (25 分)

    7-227 寻找大富翁 (25 分) 胡润研究院的调查显示,截至2017年底,中国个人资产超过1亿元的高净值人群达15万人.假设给出N个人的个人资产值,请快速找出资产排前M位的大富翁. 输入格式: 输 ...

  8. HDU3785 寻找大富翁【优先队列】

    寻找大富翁 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Subm ...

  9. 数据结构PTA案例7-1.3 寻找大富翁

    案例7-1.3 寻找大富翁 1.题目 2.三种时间复杂度为O(N^2^)的解法 2.1 选择排序算法 2.2 插入排序算法 2.3 冒泡排序算法 3.时间复杂度为O(N*logN)的解法 3.1 快速 ...

  10. 7-13 寻找大富翁 (25分)

    7-13 寻找大富翁 (25分) 胡润研究院的调查显示,截至2017年底,中国个人资产超过1亿元的高净值人群达15万人.假设给出N个人的个人资产值,请快速找出资产排前M位的大富翁. 输入格式: 输入首 ...

最新文章

  1. 深度学习中的优化算法之MBGD
  2. opengl正方形绕点旋转_一题十五种解法够不够? 旋转,构造,四点共圆乐不停...
  3. pyspark DataFrame 转RDD
  4. 惠普z840工作站linux,HP Z840 工作站,高清非编工作站
  5. Cacti 监控网络
  6. 配置windows 2008 作为远程访问SSL-×××服务器系列之二
  7. Java 必看的 Spring 知识汇总
  8. java中接口文件创建_功能接口简介–在Java 8中重新创建的概念
  9. php java 通信_PHP与Java进行通信的实现方法
  10. Python bin 函数 - Python零基础入门教程
  11. php获取数据库的表名和字段名
  12. 2017.9.25 Xor 失败总结
  13. [yum] yum加速
  14. 帆软模板中tooltip 提示框的使用
  15. 利用DiskGenius对硬盘无损分区大小调整+无损分割新分区。
  16. 【视频直播篇七】Aliplayer的使用
  17. 2022年,北京将建设22.4公里的轨道交通
  18. jpg转bmp c语言 linux,C语言实现BMP转换JPG的方法
  19. 计算机音乐野狼,野狼disco(hook部分)单轨调教用
  20. 图像处理(一):傅里叶变换简单讲解

热门文章

  1. [wp7游戏]wp7~~竞赛类游戏~~集合贴~~
  2. 序列化和反序列化(三)——父类的序列化
  3. 再谈如何以最简单的方法将泛型为String类型的集合或String类型的数组转化为逗号间隔字符串形式
  4. C# 调用并执行SQL脚本文件
  5. C++ 前向声明(转载)
  6. 30. 最小的K个数(C++版本)
  7. 2.React学习笔记----修改模板并使用Ant Design
  8. 安卓开机画面_只需三招,电视/盒子开机启动不再是问题
  9. 剑指 Offer 09. 用两个栈实现队列(day 03)
  10. spring基于注解的 IOC 配置ioc实现crud