D. 天天的n台电脑

    Type: Default 1000ms 256MiB

天天的n台电脑

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

Background

Special for beginners, ^_^

Description

蒙青创有 nn 台电脑。给你整数n n 和一个整数数组 batteries ,其中第 ii 个电池可以让一台电脑 运行 batteries[i] 分钟。flcflc想使用这些电池让 全部nn台电脑同时运行。

一开始,他可以给每台电脑连接至多一个电池 。然后在任意整数时刻,他都可以将一台电脑与它的电池断开连接,并连接另一个电池,他可以进行这个操作 任意次 。新连接的电池可以是一个全新的电池,也可以是别的电脑用过的电池。断开连接和连接新的电池不会花费任何时间

注意,他不是雷神,不能给电池充电。

请计算flcflc可以让 nn 台电脑同时运行的 最长 分钟数。

Format

Input

两行,第一行n表示有n台电脑 第二行 若干个数据,表示有若干块电池,每一个值代表电量

Output

所有电脑同时运行的最长分钟数

Samples

2
3 3 3
4

示例1: 输入:n = 2, batteries = [3,3,3] 输出:4 解释: 一开始,将第一台电脑与电池 0 连接,第二台电脑与电池 1 连接。 2 分钟后,将第二台电脑与电池 1 断开连接,并连接电池 2 。注意,电池 0 还可以供电 1 分钟。 在第 3 分钟结尾,你需要将第一台电脑与电池 0 断开连接,然后连接电池 1 。 在第 4 分钟结尾,电池 1 也被耗尽,第一台电脑无法继续运行。 我们最多能同时让两台电脑同时运行 4 分钟,所以我们返回 4 。 示例2: 输入:n = 2, batteries = [1,1,1,1] 输出:2 解释: 一开始,将第一台电脑与电池 0 连接,第二台电脑与电池 2 连接。 一分钟后,电池 0 和电池 2 同时耗尽,所以你需要将它们断开连接,并将电池 1 和第一台电脑连接,电池 3 和第二台电脑连接。 1 分钟后,电池 1 和电池 3 也耗尽了,所以两台电脑都无法继续运行。 我们最多能让两台电脑同时运行 2 分钟,所以我们返回 2 。

数据范围

1nbatteries.length1051 \le n \le batteries.length \le 10^5 1batteriesi1091 \le batteries_i \le 10^9

二分查找二分答案

Not Claimed
Status
Done
Problem
7
Open Since
2024-11-27 0:00
Deadline
2024-12-4 23:59
Extension
24 hour(s)