题解 | #递增的产奶量#

递增的产奶量

https://www.nowcoder.com/practice/455120f1195a4fa992c88b97bfa9f8f6

考察的知识点:数组;

解答方法分析:

  1. 获取牛奶列表的长度,保存在变量n中。
  2. 从列表末尾开始遍历牛奶列表,使用递减的循环变量i。
  3. 对于每个牛奶值,判断是否等于9。如果等于9,则将其更新为04. 如果牛奶值不等于9,则将其加1,并返回更新后的牛奶列表。
  4. 如果遍历完整个列表没有返回结果(即所有牛奶值都是9),则创建一个新的长度为n+1的列表newArr。
  5. 将新列表的第一个元素赋值为1。
  6. 使用循环遍历原始牛奶列表,将元素逐个复制到新列表的相应位置。
  7. 返回新列表作为答案。

所用编程语言:C++;

完整编程代码:↓

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

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务