题解 | #乳牛研究成果评估#

乳牛研究成果评估

https://www.nowcoder.com/practice/00e2e90dd8a24e1695cee8c3cb339390

import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     *
     * @param milk_production int整型一维数组
     * @return int整型
     */
    public int cow_hp (int[] milk_production) {
        // write code here
        Arrays.sort(
            milk_production); // 对成果产生的乳量提升数组进行排序
        int n = milk_production.length;
        int maxHp = 0; // 乳牛指数
        for (int i = 0; i < n; i++) {
            int minN = Math.min(milk_production[i],
                                n - i); // 选取乳量提升和当前剩余成果数中的较小值
            maxHp = Math.max(maxHp, minN); // 更新乳牛指数
        }
        return maxHp;
    }
}

Java 编程语言。

该题考察了以下知识点:

  1. 数组排序
  2. 数组遍历
  3. 条件判断和取最值

代码的文字解释如下:

  • 对成果产生的乳量提升数组进行排序,以便能够从小到大遍历。
  • 创建一个变量 maxHp,用于记录乳牛指数的最大值。
  • 使用循环遍历数组中的每个元素,其中 i 表示当前遍历到的索引。
  • 对于每个元素,计算其值与当前剩余成果数 n - i 的较小值,表示至少发现的研究成果数量,记为 minN
  • 更新 maxHp 为 maxHp 和 minN 中的较大值,以获取乳牛指数的最大值。
  • 返回计算得到的 maxHp,即为牧场主的乳牛指数。
全部评论

相关推荐

路过的咸蛋超人也想拿offer:你是我见过最美的牛客女孩
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务