考察的知识点:贪心;

解答方法分析:

  1. 初始化两个变量:count和maxHeight。初始时,count设置为1,maxHeight设置为列表中第一个元素的高度。
  2. 从列表的第二个元素开始向右遍历。对于每个元素:检查该元素的高度是否大于当前最大高度maxHeight。如果是,将该元素的高度赋值给maxHeight,并将count值加1。如果不是,继续向右遍历下一个元素。
  3. 循环结束后,返回count值作为结果,即可以看到的牛的数量。

所用编程语言:C++;

完整编程代码:↓

class Solution {
  public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     *
     * @param cowHeights int整型vector
     * @return int整型
     */
    int visibleCows(vector<int>& cowHeights) {
        int count = 1;
        int maxHeight = cowHeights[0];
        for (int i = 1; i < cowHeights.size(); i++) {
            if (cowHeights[i] > maxHeight) {
                maxHeight = cowHeights[i];
                count++;
            }
        }
        return count;
    }
};