一、题目描述
幼儿园组织活动,老师布置了一个任务:
每个小朋友去了解与自己同一个小区的小朋友还有几个。
我们将这些数量汇总到数组 garden 中。
请根据这些小朋友给出的信息,计算小朋友至少有几个?
二、输入描述
输入:garden[] = {2, 2, 3}
说明:
- garden 数组长度最大为 999
- 每个小区的小朋友数量最多 1000 人,也就是 garden[i] 的范围为 [0, 999]
三、输出描述
7
1、输入
2 2 3
2、输出
7
3、说明
- 第一个小朋友反馈有两个小朋友和自己同一小区,即此小区有3个小朋友。
- 第二个小朋友反馈有两个小朋友和自己同一小区,即此小区有3个小朋友。
- 这两个小朋友,可能是同一小区的,且此小区的小朋友只有3个人。
- 第三个小区反馈还有3个小朋友与自己同一小区,则这些小朋友只能是另外一个小区的。这个小区有4个小朋友。
四、解题思路
- 每一个数字+1才是当前小区的小朋友数量
- 如果数的个数小于当前数,则取当前数即可
该博客介绍了华为OD机试中的一道题目,要求根据输入的小区小朋友数量数组计算至少有多少个小朋友。解题思路包括将数字加1得到每个小区实际人数,然后通过逻辑分析确定最小小孩数。提供的Java算法源码和效果展示帮助理解解题过程。
订阅专栏 解锁全文
7288





