max

来源:互联网 发布:node sass ruby 编辑:程序博客网 时间:2024/04/29 12:46

第4题Max

描述

目前我们已经进入了大数据(Big Data )时代,所需要处理的数据规模越来越大不幸的是,领导交给你的机器仍然是一台老旧的电脑,其内存之低令人发指。不过领导要求你完成的任务却很严苛:希望能在海量的数据中,选出他希望的值。

具体来说,他给了你一块装有大量数据的磁盘,每个数据只包括一个int 类型(有符号 32bit 整数),现在他希望你从中选出最大的 k 个,这本来是一个简单的任务,不过考虑到受限的内存,简单的任务也变得复杂起来。

输入

为了加快输入输出速度,输入文件采用二进制格式存储。前两个数字n  k ,表示你需要从 n 个数字中选出最大的 k 个。之后随即连续存储了 n 个整数。

输出

输出包括k 行,依次为从大到小的最大的 k 个数字,考虑到输入中的数字可能相同,这里输出的数字也可能相同。

输入样例

6

3

1

4

-5

1

4

-2

特别注意:实际输入均为二进制文件,所有数据连续存储,并没有行的概念。

输出样例

4

4

1

限制

1 <= n <= 10,000,000

1 <= k <= 50,000

k <= n

时间:3 sec

空间:13MB



据说可以用暴力排序的方法进行,bug了

0 0
原创粉丝点击