青少年编程知识记录 codecoming

【题解】装满杯子需要的最短总时长

【题目描述】

现有一台饮水机,可以制备冷水、温水和热水。每秒钟,可以装满 2 杯 不同 类型的水或者 1 杯任意类型的水。

给你一个下标从 0 开始、长度为 3 的整数数组 amount ,其中 amount[0]amount[1] 和 amount[2] 分别表示需要装满冷水、温水和热水的杯子数量。返回装满所有杯子所需的 最少 秒数。

【输入描述】

一行,3个数,分别表示需要装满冷水、温水和热水的杯子数量。

【输出描述】

一行一个数,所需的最少秒数

【样例1输入】

1 4 2

【样例1输出】

4

【样例1解释】

下面给出一种方案:  第 1 秒:装满一杯冷水和一杯温水。  第 2 秒:装满一杯温水和一杯热水。  第 3 秒:装满一杯温水和一杯热水。  第 4 秒:装满一杯温水。  可以证明最少需要 4 秒才能装满所有杯子。

【样例2输入】

5 4 4

【样例2输出】

7

【样例2解释】

下面给出一种方案:  第 1 秒:装满一杯冷水和一杯热水。  第 2 秒:装满一杯冷水和一杯温水。  第 3 秒:装满一杯冷水和一杯温水。  第 4 秒:装满一杯温水和一杯热水。  第 5 秒:装满一杯冷水和一杯热水。  第 6 秒:装满一杯冷水和一杯温水。  第 7 秒:装满一杯热水。

【样例3输入】

5 0 0

【样例3输出】

5

【样例3解释】

每秒装满一杯冷水

本篇文章已加密,请输入密码后查看。

作者:亿万年的星光 分类:题解目录 浏览: