知识点

贪心

解题思路

根据对hp的理解,这道题我们可以将milk_production数组排序,然后从后往前遍历数组,找到最大的n使得milk_production[n-1] >= n。即找到第一个满足条件的位置。

Java题解

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 = 0;

        for (int i = milk_production.length - 1; i >= 0; i--) {
            if (milk_production[i] >= n + 1) {
                n++;
            } else {
                break;
            }
        }

        return n;
    }
}