一、题目链接
http://noi.openjudge.cn/ch0106/02/
二、解题思路
◎ 循环遍历每个苹果距离地面的高度:
→ 如果陶陶的手伸直能够达到的最大高度加上板凳高度不小于当前苹果距离地面的高度,计数器加1。
三、实施步骤
◆ 方法public int count(int[] height, int hand, int bench)处理所有业务逻辑:
→ 参数height为int类型的数组,存储所有苹果距离地面的高度;
→ 参数hand为int类型的整数,代表陶陶的手伸直能够达到的最大高度;
→ 参数bench为int类型的整数,代表板凳的高度;
→ 方法count返回int类型的整数,代表陶陶能够摘到的苹果的数目。
◇ 方法count实施步骤如下:
◎ 首先,定义int类型的整数ans,代表陶陶能够摘到的苹果的数目,初始时ans为0;
◎ 其次,通过foreach循环遍历height数组的每个元素e,循环处理如下:
→ 令ans=(hand+bench>=e?ans+1:ans);
◎ 最后,返回ans。
◇ 在方法main中输入所有苹果距离地面的高度、陶陶的手伸直能够达到的最大高度,设置板凳高度为30,将它们作为参数注入方法count,输出
计算结果。
四、Java程序
import java.util.Scanner;
public class Main {
public int count(int[] height, int hand, int bench) {
int ans = 0;
for (int e : height) {
ans = (hand + bench >= e ? ans + 1 : ans);
}
return ans;
}
public static void main(String[] args) {
Main test = new Main();
Scanner input = new Scanner(System.in);
int[] height = new int[10];
for (int i = 0; i < 10; i++) {
height[i] = input.nextInt();
}
int hand = input.nextInt();
System.out.print(test.count(height, hand, 30));
}
}