#include <functional> class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param milk_production int整型vector * @return int整型 */ int cow_hp(vector<int>& milk_production) { // write code here sort(milk_production.begin(), milk_production.end()); int n = milk_production.size(); int ans; for (int i = 0; i < n; ++i) { if (milk_production[i] >= n - i) { ans = n - i; break; } } return ans; } };
一、题目考察的知识点
贪心
二、题目解答方法的文字分析
先对数组进行排序得到一个升序数组
然后继续去遍历数组并且判断至少发现了 n 项研究成果,且每个成果产生的乳量提升至少是n公斤。
n-i就是包括当前牛以及后面牛的数量看看是否小于等于当前牛的乳量
三、本题解析所用的编程语言
c++