在vivo产线上,每位职工随着对手机加工流程认识的熟悉和经验的增加,日产量也会不断攀升。

  • Post author:
  • Post category:其他


在vivo产线上,每位职工随着对手机加工流程认识的熟悉和经验的增加,日产量也会不断攀升。

假设第一天量产1台,接下来2天(即第二、三天)每天量产2件,接下来3天(即第四、五、六天)每天量产3件 … …

以此类推,请编程计算出第n天总共可以量产的手机数量。

在这里插入图片描述

class Solution {
    public int solution (int n) {
        int i=0;//等差数列差值为一
        int j=n;//n值,用等差数列一直减,找到图中的层数
        int k=0;//总产量
        while(j>i){
            i=i+1;//等差数列递增
            k=k+i*i;//层层加上总产量,每次除都加,一直到除不尽
            j=j-i;//用n除一个等差数列,最后得到商和余数,商是i,余数是j
        }//循环结束后i是n项可以填满的层数,j是最后一层剩余的项数
        k=k+j*(i+1);//层数就等于这一层的项的值,加上最后一层
        return k;
    }
}



版权声明:本文为yfcfare原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。