前m大的数

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 17201    Accepted Submission(s): 5871

Problem Description
还记得Gardon给小希布置的那个作业么?(上次比赛的1005)其实小希已经找回了原来的那张数表,现在她想确认一下她的答案是否正确,但是整个的答案是很庞大的表,小希只想让你把答案中最大的M个数告诉她就可以了。
给定一个包含N(N<=3000)个正整数的序列,每个数不超过5000,对它们两两相加得到的N*(N-1)/2个和,求出其中前M大的数(M<=1000)并按从大到小的顺序排列。
Input
输入可能包含多组数据,其中每组数据包括两行:
第一行两个数N和M,
第二行N个数,表示该序列。
Output
对于输入的每组数据,输出M个数,表示结果。输出应当按照从大到小的顺序排列。
Sample Input
4 4 1 2 3 4 4 5 5 3 6 4
Sample Output
7 6 5 5 11 10 9 9 8
Author
Gardon
Source
杭电ACM集训队训练赛(VI) 

思路:
水题,题意是n个数两两相加的和的前m大的数。直接两重循环过。
代码:
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<algorithm>
using namespace std;int a[3005],b[4500000];int main()
{freopen("in.txt","r",stdin);int m,n;while(scanf("%d%d",&m,&n)!=EOF){for(int i=0;i<m;i++){scanf("%d",&a[i]);}int l=0;for(int i=0;i<m;i++)for(int j=i+1;j<m;j++){b[l]=a[i]+a[j];l++;}sort(b,b+l);printf("%d",b[l-1]);for(int i=l-2;i>l-n-1;i--){printf(" %d",b[i]);}printf("\n");}return 0;
}

HDOJ 1280 前m大的数(水题)相关推荐

  1. hdu 1280 前m大的数 哈希

    前m大的数 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Subm ...

  2. HDU 1280 前m大的数(暴力)

    前m大的数 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submiss ...

  3. HDU - 1280 前m大的数

    Description 还记得Gardon给小希布置的那个作业么?(上次比赛的1005)其实小希已经找回了原来的那张数表,现在她想确认一下她的答案是否正确,但是整个的答案是很庞大的表,小希只想让你把答 ...

  4. 【面试现场】如何在10亿数中找出前1000大的数

    小史是一个应届生,虽然学的是电子专业,但是自己业余时间看了很多互联网与编程方面的书,一心想进BAT互联网公司. 之前小史在BAT三家的面试中已经挂了两家,今天小史去了BAT中的最后一家面试了. 简单的 ...

  5. hdu1280 前m大的数(数组下标排序)

    前m大的数 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Subm ...

  6. 如何在10亿数中找出前1000大的数

    1.排序方法 首先能想到的就是先排序,然后取前1000个数,或者部分排序,只排出前1000个数就行 缺点:这些方法的时间复杂度都比较高 2,分治法 可以使用分治法,这有点类似快排中partition的 ...

  7. C语言(CED)输出前k大的数(分治法/局部快速排序):给定一个数组,统计前k大的数并且把这k个数从大到小输出。

    )输出前k大的数(分治法/局部快速排序):给定一个数组,统计前k大的数并且把这k个数从大到小输出. [输入] 第一行包含一个整数n,表示数组的大小. 第二行包含n个整数,表示数组的元素,整数之间以一个 ...

  8. 信息学奥赛一本通(1235:输出前k大的数)——堆排序

    1235:输出前k大的数 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 12715     通过数: 4043 [题目描述] 给定一个数组,统计前k大的数并且把这 ...

  9. 输出前k大的数(信息学奥赛一本通-T1235)

    [题目描述] 给定一个数组,统计前k大的数并且把这k个数从大到小输出. [输入] 第一行包含一个整数n,表示数组的大小.n < 100000. 第二行包含n个整数,表示数组的元素,整数之间以一个 ...

  10. [Hash应用问题] 例3.2 给出n个整数,按从大到小的顺序输出前m大的数

    题目描述: 给出n个整数,请按从大到小的顺序输出前m大的数. 输入: 每组测试数据又两行,第一行有两个数n,m(0<n,m<1000000),第二行包含n个各不相同,且都处于区间[-500 ...

最新文章

  1. 只看到了别人28岁退休,背后的期权知识你知道吗?
  2. 一份不错的vue.js基础笔记!!!!
  3. Android初学者教程
  4. Static关键字测试
  5. sudo命令 和限制root 远程登陆
  6. angularjs 路由---angularjs 搭建前端框架
  7. SAP Spartacus 如何根据 page layout 获得对应支持的 slots
  8. 代数学笔记3: 分裂域
  9. 移动前端开发之viewport的深入理解(转)
  10. TeamFlowy——结合Teambition与Workflowy
  11. 00截断上传绕过_Getshell | 文件上传绕过整理
  12. 实现微信自动回复看电影!
  13. 高通平台文档下载【学习笔记】
  14. 2827: 千山鸟飞绝 非旋treap
  15. 数据挖掘-决策树算法的R实现
  16. 从用AI+VR虚拟教室穿越到中国说起,看红头文件下,互联网教育公司的AI招牌
  17. office2007在ppt中插入文件对象(可以单击打开)
  18. 1w存银行一年多少利息_在银行存定期一万块一年有多少利息?
  19. android翻书效果实现原理( 贝塞尔曲线绘制原理/点坐标计算)
  20. 核心单词Word List 50

热门文章

  1. (三)lvs负载均衡详解--lvs-DR+keepalived配置
  2. Tony Stark
  3. 快速破解IDEA(2017)
  4. 南理ARPG游戏深度学习One
  5. 不同的count用法
  6. wait和notify,sleep
  7. 测试用例方法--错误推测法
  8. [洛谷P3939]数颜色
  9. debian9.6安装virtualbox
  10. 你知道Base64编码的图片吗