import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     *
     * @param milk int整型一维数组
     * @return int整型一维数组
     */
    public int[] tomorrowMilk (int[] milk) {
        // write code here
        int count = 0;
        int add_value = 1;
        StringBuffer stringBuffer = new StringBuffer();
        for (int i = milk.length - 1; i >= 0; i--) {
            int result = milk[i] + add_value + count;
            count = result / 10;
            stringBuffer.append(result % 10);
            add_value = 0;
        }
        if (count != 0) {
            stringBuffer.append(count);
        }
        stringBuffer.reverse();
        int[] arr = new int[stringBuffer.length()];
        for (int i = 0; i < arr.length; i++) {
            arr[i] = stringBuffer.charAt(i) - '0';
        }
        return arr;
    }
}

本题考察的知识点是整形数组的加法,所用编程语言是java。

我们可以从数组的最后一个值开始加一加进位标志值得到结果result,result如果大于等于10则进位标志设为1,否则设为0。将result对10求余结果加入StringBuffer中,遍历结果后将StringBuffer转置转化成数组则是题目答案