[编程题]vivo智能手机产能

来源:牛客vivo2020届春季校园招聘在线编程考试

在vivo产线上,每位职工随着对手机加工流程认识的熟悉和经验的增加,日产量也会不断攀升。
假设第一天量产1台,接下来2天(即第二、三天)每天量产2件,接下来3天(即第四、五、六天)每天量产3件 … …
以此类推,请编程计算出第n天总共可以量产的手机数量。

思路

day保存天数,rtn保存总计的手机数量,perday保存每天产能,temp保存该产能下一直持续到第temp天。我这种方法是累加的,也可以用乘法来做,会更快一些。

import java.util.*;

public class Solution {
    /**
     * @param n int整型 第n天
     * @return int整型
     */
    public int solution (int n) {
        // write code here
        int rtn = 0;
        int day = 1;
        int perday = 1;
        int temp = 1;
        while(day <= n){
            if(day > temp) {
                perday += 1;
                temp = temp + perday;
            }
            rtn = rtn + perday;
            day++;
        }
        return rtn;
    }
}

你可能感兴趣的:(OJ随笔)